小编use*_*117的帖子

大型Permgen尺寸+性能影响

我们在tomcat 6上运行liferay门户.每个portlet都是一个包含的Web应用程序,因此它包含了portlet本身所需的所有库.我们目前有30多个portlet.结果是我们的tomcat的permgen随着我们部署的每个portlet而增加.

我们现在有两条路可以遵循.将每个portlet通常使用的一些库移动到tomcat共享库.这将包括像spring/hibernate/cxf/....这样的东西来减少我们的permgen大小或更容易增加permgen大小.

第二个选项允许我们将每个portlet保持为自包含的实体.

现在的问题是,增加permgen大小会对性能产生负面影响吗?我们目前的运行速度为512MB.我发现很少甚至没有关于此的信息.但发现一些帖子的人都在谈论以1024MB permgen大小运行而没有问题.

java portal permgen liferay tomcat6

8
推荐指数
1
解决办法
6914
查看次数

组合hibernate @Transactional和ehcache @Cacheable总是创建数据库事务

在对我们的应用程序进行负载测试时,我注意到如果你使用@Transactional和@Cacheable注释,那么hibernate总是会创建一个数据库事务.有没有一种简单的方法来防止这种情况?在spring中解决这个问题的一种更为简单的方法是使用以下类/接口

  • Servicelayer接口
  • 可缓存的带注释的类,它只是一个代理/转发
  • 事务性注释实现类

会发生什么是以下情况

致电1:

  1. 交易得到了创造
  2. 类方法被调用
  3. 结果缓存并返回

电话2:

  1. 交易得到了创造
  2. 返回缓存结果

首选结果应为:

致电1:

  1. 交易得到了创造
  2. 类方法被调用
  3. 结果缓存并返回

电话2:

  1. 返回缓存结果

spring annotations hibernate ehcache

7
推荐指数
1
解决办法
2671
查看次数

标签 统计

annotations ×1

ehcache ×1

hibernate ×1

java ×1

liferay ×1

permgen ×1

portal ×1

spring ×1

tomcat6 ×1