(FAQ)健康度检测存在缺陷导致eas服务器重启(宕机)

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

(FAQ)健康度检测存在缺陷导致eas服务器重启(宕机)

(FAQ)健康度检测存在缺陷导致eas服务器重启(宕机)
原因分析: 1、 查看server1下的server.trace文件,存在管理控制台把eas服务进程杀掉的记录 2、查看apusic日志,可看到健康度检测出内存存在恶化的迹象 2011-10-23 10:56:00 INFO [con.out] [2011-10-23 10:56:00,310 INFO RPC-4]the taskID isd6ffaec5-4845-43fc-aaf6-00207f4e2259SCHE 2011-10-23 10:56:06 INFO [con.out] [2011-10-23 10:56:06,492 WARN RPC-36]MemoryHealthDegree is bad. Last 3 freeMemory is 20M, 17M, 15M. current freeMemory is 15M. 2011-10-23 10:56:07 INFO [con.out] line=getServerStatus 2011-10-23 10:56:08 INFO [con.out] handleConnection, protocol=admin 2011-10-23 10:56:08 INFO [con.out] line=shutdown 2011-10-23 10:56:09 INFO [apusic.service.ApusicAdmin] Stopped. 2011-10-23 0:56:09 INFO [apusic.service.admin] Stopped. 3、分析gc日志,只是内存紧张,而且没用通过full gc来回收内存,有可能一次full gc便能回收大量的内存,只有在full gc回收不了内存的情况下,才会出现内存溢出并oom。 4、 进一步分析健康度的检查逻辑,得出如下结论 server1由于没有负荷,也没有压力(估计系统没什么人用),导致长时间没有触发Full GC。此时JVM已使用内存上升到Heap的顶部,但又没有到触发Full GC的程度,导致Free的内存处于很低的水平。健康度检查函数检测到可用内存持续三次占用很低,试图调用System.gc()释放内存。由于JVM参数禁止人为触发的Full GC,使得gc动作没有执行。、健康度检查函数在调用System.gc()后检查可用内存还是很低,得出健康度已经恶化的结论。 解决方法: 以下三种方法均可 1、 替换为ibm jdk. 2、 在easprofilesserver1in set-server-env.sh中,去除XX:+DisableExplicitGC参数,允许人为的full gc。 3、 禁用健康度检查功能 在easservercluster下的ormrpc_loadbalance文件中增加一行dynamicFactor = false来关闭。

(FAQ)健康度检测存在缺陷导致eas服务器重启(宕机)

(FAQ)健康度检测存在缺陷导致eas服务器重启(宕机)原因分析:1、 查看server1下的server.trace文件,存在管理控制台把eas服务进程杀掉的记...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息