Tomcat上的Alfresco社区开始很慢

时间:2010-02-25 09:57:28

标签: java tomcat performance startup alfresco

我们目前正在旧服务器上测试Alfresco社区(仅1GB内存)。因为这是社区版本,所以每次更改配置时我们都需要重新启动它(我们正在尝试添加一些功能,例如生成DWG文件的预览等)。但是,重启需要很长时间(我认为大约需要4分钟)。这可能是由于可用内存的限制。有没有人知道可以改善重启时间的一些功能或设置?

3 个答案:

答案 0 :(得分:4)

与所有表现问题一样,很少有灵丹妙药。

内存压力 - 该应用程序正在启动但是512m堆刚刚足以满足应用程序的需求,并且它正在花费一半的启动时间来运行GC。

查看以下任何内容: 1. -verbose:gc 2. jstat -gcutil 2. jvisualvm - 更好的UI

您正在尝试查看在GC中花费了多少时间,查找许多无法回收大部分堆的完整垃圾回收事件,即99% - > 95%。

解决方案 - 更多堆,真的没有别的。

你可能想尝试-XX:+ AggressiveHeap,以便让JVM最大限度地利用盒子上的内存使用量,唯一的麻烦就是只有1GB的内存才会受到限制。 List of all JVM options

磁盘IO - 在启动期间它自己的盒子没有以接近100%的CPU运行(假设100%的单核,启动通常是单线程的)那么可能有一些磁盘IO应用程序正在做的就是瓶颈。

使用Windows性能监视器等操作系统工具检查磁盘IO。也许它不是导致IO的应用程序,它可能是交换活动(页面错误)

解决方案:修复应用程序(不太可能)或获得更快的磁盘/计算机或更多的物理内存

答案 1 :(得分:1)

Tomcat缓慢加载的两个最常见原因:

  • 你有很多网络应用程序。 Tomcat需要一些时间来为每个人创建Web上下文。
  • 您的webapp在Web应用程序目录中包含大量文件。 Tomcat在启动时扫描Web应用程序目录

答案 2 :(得分:1)

还可以查看java performance tuning whitepaper,我还会向您推荐Lambda Probe www.lambdaprobe.org/d/index.htm,看看您是否对您的gcc设置感到满意,它有很好的实时gcc和tomcat的内存跟踪。 / p>

我自己让Alfresco使用java性能调优白皮书中的示例4.2.6运行:

  

4.2.6调整示例6:调整低暂停时间和高吞吐量

该文件中也很好地解释了记忆设置。

亲切的问候Mahatmanich