【发布时间】:2012-03-11 05:23:41
【问题描述】:
我正在努力提高我们的战争的启动性能,因为我们实际上是在托管一个基于服务的后端,我们有大约 50 多个战争(每个服务一个)。一次部署所有这些服务有时会导致 PermGen,并且服务器的重新启动可能需要相当长的时间。因此,我正在尝试评估架构(WLS、Spring、Hibernate、CXF)的所有可能性,以获得性能提升。
我们所有的事务都是通过 Spring AOP 完成的,我们的一些 SLA/策略使用 AOP 切入点。
我见过一些例子,我们的 Spring AOP 切入点要么创建不当,要么我们必须创建很多会导致 JUnit 永久生成的情况。看起来大部分启动时间是切入点的创建和切入点对象的检索(因此我将一些自定义切入点/拦截器类合并为单个类和单个切入点,这减少了启动时创建的切入点数量约 30%)。
为了从编译时编织中获得一些好处,是否值得将所有这些都转换为 AspectJ(我以前没有使用过)?这会为启动性能和内存使用提供更好的速度吗?
我看过帖子:
而且我绝对只是从一种减轻启动和内存需求负担的方式来看,并且只想在值得付出努力的情况下尝试迁移。
【问题讨论】: