Confluence 6 垃圾收集性能问题

简介: Confluence 6 垃圾收集性能问题

这个文章与 Oracle 的 Hotspot JVM 虚拟机的内存管理为参照的。这些建议是我们在对大的 Confluence 安装实例用户进行咨询服务的时候得到的最佳配置方案。

不要在 Confluence 中使用 Concurrent Mark Sweep (CMS) ,除非你得到了 Atlassian 支持小组的明确说明。这个需要额外的手工调整和测试,通常这个会降低系统的性能。

使用一个小的 heap

在不出现 OutOfMemory 错误的情况下,保持你的 heap 尽可能的小。当你遇到了 OutOfMemory 错误,需要增加 heap 的时候,我们推荐你按照 512MB 到 1 GB 的顺序进行增加。如果你还持续的获得 OutOfMemory 错误,那么你可以考虑再继续增加 512 MB 或者 1GB。你可以持续进行增加,直到你不再出现 OutOfMemory 错误。不要尝试一次增加到位,这样可能会导致垃圾收集时间的增长。

删除所有老的收集参数

只有在完全的 GC 后,JVM 将会重新定义 Eden, Survivor 等参数的大小,这个大小是基于 GC 处理来确定的。这个将会保证 GC 处理程序能够处理真实的垃圾情况和垃圾对象。在绝大部分情况下,能够保证 JVM 为你提供更好的性能。

如果你的 JVM 中添加了参数,当在垃圾收集的时候遇到了困难。那么我们建议你删除掉你在 GC 前添加的参数,除非你添加的这些参数是为了解决一些特定的问题。你现在应该考虑如何避免在 GC 中出现的问题,而不是导致其他的问题。

检查你的虚拟机(VM)资源

如果你运行 Confluence 在一个 VM 上的话,检查这个 VM 没有使用 swap 文件。

如果这个 VM 了使用了 swap 文件,那么当 JVM 进行垃圾收集的时候,将会把这些 swap 文件载入到内存后清理他们,这个将会导致垃圾清理进程的长时间暂停。为了避免使用 swapping, ballooning 和 bursting,将这些信息载入到 VM 的内存中。

手动清理

如果你按照上面的说明进行了操作后还遇到了一些困难,但是你还是希望能够提高系统的性能,我们推荐你使用Garbage Collection (GC) Tuning Guide 页面提供的方法。这个页面将会知道你如何达到你自己期望的性能指标(throughput/footprint/latency)和如何进行调整。

查看你的垃圾收集日志

How to Enable Garbage Collection (GC) Logging 和使用类似  Chewiebug's GCViewer 工具来查看结果的日志。

 
目录
相关文章
|
12月前
|
Java
jvisualvm安装并查看GC过程
jvisualvm安装并查看GC过程
131 0
|
9天前
|
算法 安全 程序员
垃圾收集对程序性能有什么影响?
垃圾收集对程序性能有什么影响?
|
4月前
|
Prometheus 监控 Cloud Native
如何优化Java应用的内存使用
如何优化Java应用的内存使用
|
1月前
|
监控 Java Perl
使用jstat工具来监控G1垃圾回收器的性能
使用jstat工具来监控G1垃圾回收器的性能
|
4月前
|
监控 Java 中间件
FGC频繁导致CPU 飙升定位及JVM配置优化总结
FGC频繁导致CPU 飙升定位及JVM配置优化总结
148 0
|
Java 调度
服务器常见问题排查(一)——cpu占用高、上下文频繁切换、频繁GC
文章主要讨论了服务器中常见性能问题的一些排查思路,这篇文章主要讨论了CPU负载过高,频繁GC和频繁切换上线文这三个问题。
1228 0
服务器常见问题排查(一)——cpu占用高、上下文频繁切换、频繁GC
|
消息中间件 算法 前端开发
26-JVM优化到底优化什么?
通过前两个系列我们把JVM相关的一些原理内容并结合一些案例和GC工作原理给大家都介绍清楚了,那么本系列开始重点给大家带来JVM优化相关内容和实战。
95 0
26-JVM优化到底优化什么?
|
存储 缓存 算法
详述JVM的GC及垃圾回收策略
详述JVM的GC及垃圾回收策略
922 2
详述JVM的GC及垃圾回收策略
|
Java
JVM GC频繁优化
JVM GC频繁优化
192 0
|
监控 数据可视化 Java
JVM调优——JVM监控工具jvisualvm的使用及GC插件安装
JVM调优——JVM监控工具jvisualvm的使用及GC插件安装
198 1
JVM调优——JVM监控工具jvisualvm的使用及GC插件安装