减少频繁的内存申请和释放

 
减少频繁的内存申请和释放
2016-09-21 20:44:43 /故事大全

有一些程序在运行过程中,会频繁申请和释放内存,例如Oracle 的Listener连接程序在使用Dedicated设置,并且连接属于短连接的情况下,会不断建立新连接,申请内存空间,完成客户端SQL请求,然后释放内存,退出。当系统繁忙的时候,表象就是系统建立很多新进程,进程号不断变化,同时有大量的sr和fr,而且fr与sr几乎相等(在系统内存很多的情况下,否则fr一般只有1/6-1/4sr大小,甚至更少。这说明检索了4-6块的物理内存,才发现一块内存可以释放)。这种情况下,即使系统有足够的内存进行调度,也会由于系统浪费了大量的CPU资源用于内存数据检索,而导致系统运行缓慢。解决方式是通过Oracle设置将短连接类型变成长连接,例如设置shared server/service;延长连接程序的空闲等待时间,甚至更改客户端的工作方式,避免不必要的内存扫描/请求和释放动作。

所属专题:
如果您觉得本文或图片不错,请把它分享给您的朋友吧!

 
搜索
 
 
广告
 
 
广告
 
故事大全
 
版权所有- © 2012-2015 · 故事大全 SITEMAP站点地图手机看故事 站点地图