首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

大话系统架构优化项目(8)

大话系统架构优化项目(8)

JVM参数调整

调整heap参数和垃圾回收参数,需要通过压力测试和监控记录综合分析最有方案:

Id
   

参数组合
   

TransResponse Time
   

Throughput
   

Passed Transactions
     

Heap参数
   

GC参数
                    

1
                        

2
                        

3
                        

4
                        

5
                        

【案例】应用服务器运行一段Object实例数量达百万/千万级别,使用IBMHeapAnalyzer分析内存溢出时生成heapdump文件,发现89.1%的空间被基础对象占用(为从数据库加载大量记录导致):

在阿里“救了八年火”的架构师,大话系统架构优化项目

使用jprofiler监控后发现,大量未释放的VchBaseVo对象:

在阿里“救了八年火”的架构师,大话系统架构优化项目

查看工程代码,发现使用Hibernate的list()方法去查询,hibernatelist()方法优先查询缓存数据,如获取不到则从数据库中进行获取,从数据库获取到后Hibernate将会相应的填充一级、二级缓存,所以在应用服务器级别内存中出现百万级的对象占用内存问题,此为hibernate缓存的一个有效解决方案,但是在此处确实带来了性能问题,需要调用clear() 释放一级缓存占用的内存资源。
返回列表