-
Notifications
You must be signed in to change notification settings - Fork 38.8k
Description
Ray opened SPR-9802 and commented
We tried to upgrade Spring framework from 2.5.5 to 3.1.1, during performance test we found that TransactionInterceptor will add some performance overhead because introduce of following method:
org.springframework.transaction.interceptor.TransactionAspectSupport.methodIdentification(java.lang.reflect.Method,java.lang.Class)
This new method will call Class.getDeclaredMethods() instead of using the method passed in directly.
If there are multiple transaction pointcuts defined and invoked in one call, the performance will be affected badly.
Can we do fallback support as 2.5.5 or add cache support for the method instead of call Class.getDeclaredMethods() each time?
Affects: 3.1.1
Issue Links:
- Performance degradation for after Spring 3 [SPR-9972] #14606 Performance degradation for after Spring 3 ("is duplicated by")
- Transaction names should use the concrete class name [SPR-7317] #11975 Transaction names should use the concrete class name
Referenced from: commits 89b3651, 2c8b7fe, 49294c9, bbfc807
2 votes, 5 watchers