Java Hibernate性能:EntityEntryContext.降级锁()
我分析了一个慢速spring boot+hibernate应用程序,发现大约有20%-30%(随时间增加)的时间被Java Hibernate性能:EntityEntryContext.降级锁(),java,spring,performance,hibernate,entitymanager,Java,Spring,Performance,Hibernate,Entitymanager,我分析了一个慢速spring boot+hibernate应用程序,发现大约有20%-30%(随时间增加)的时间被 org.hibernate.engine.internal.EntityEntryContext.downgradeLocks() org.hibernate.engine.internal.EntityEntryContext.downgradeLocks() 313 28,821 org.hibernate.engine.internal.Statef
org.hibernate.engine.internal.EntityEntryContext.downgradeLocks()
org.hibernate.engine.internal.EntityEntryContext.downgradeLocks() 313 28,821
org.hibernate.engine.internal.StatefulPersistenceContext.afterTransactionCompletion() 313 28,821
org.hibernate.internal.SessionImpl.afterTransactionCompletion(boolean, boolean) 313 28,821
org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.afterTransactionCompletion(boolean, boolean) 313 28,821
org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.afterCompletionCallback(boolean) 313 28,821
org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$200(JdbcResourceLocalTransactionCoordinatorImpl, boolean) 313 28,821
org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit() 313 28,821
org.hibernate.engine.transaction.internal.TransactionImpl.commit() 313 28,821
org.hibernate.jpa.internal.TransactionImpl.commit() 313 28,821
org.springframework.orm.jpa.JpaTransactionManager.doCommit(DefaultTransactionStatus) 313 28,821
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(DefaultTransactionStatus) 313 28,821
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(TransactionStatus) 313 28,821
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport$TransactionInfo) 313 28,821
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(Method, Class, TransactionAspectSupport$InvocationCallback) 313 28,821
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(MethodInvocation) 313 28,821
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed() 313 28,821
...
这个方法有什么作用
我认为这个方法可能会花费很多时间,因为有一个大型的实体管理器,但是经常调用实体管理器上的clear()根本没有帮助。我试图在两个方向上更改事务大小,但性能仍然很差
用例是根据数据库中的现有数据验证新数据
有没有人有什么想法或技巧来加速性能,并能向我解释一下该方法的作用
非常感谢