Weblogic程序剛剛在redhat linux上突然被殺死
我的 WAS 上的一個過程在黎明時被殺死。
6 個程序在此伺服器上執行。但是只有一個程序剛剛被殺死。
我不知道如何解決它。這是程序被殺死之前的 Weblogic 最後一個日誌。
/app/orarecp/bea/domains/HRRECP/bin/startWeblogic.sh: line 180: 27066 killed ${JAVA_HOME}/bin/java ${JAVA_VM} {MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava-security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTION} ${PROXY_SETTINGS} ${SERVER_CLASS}
這是 startWeblogic shell 腳本。 startWeblogic Shell 腳本:180 行
這是啟動程序 shell 腳本部分。
USER_MEM_ARGS="-Xms3072m -Xmx3072m -Xverbose:gc -Xverboselog:${LOG_HOME}/gclogs/gc.${SERVER_NAME}_`date + '%Y%m%d_%H%M%S'`.out" JAVA_OPTION="${JAVA_OPTIONS} -Xbootclasspath/p:/app/orarecp/jennifer/agent/lwst.jdk.jar:/app/orarecp/jennifer/agent/lwst.boot.jar:/app/orarecp/jennifer/agent/jennifer.boot.jar -Djennifer.config=/app/orarecp/jennifer/agent/R11.conf -javaagent:/app/orarecp/jennifer/agent/lwst.javaagent.jar -Dframeone.webapps=/svcroot/runtime/webapps -Dfile.encoding=UTF-8 -Djava.security.egd=file:///dev/urandom"
伺服器規格是…
CPU: 8 core, 2.4GHz // CPU使用率低於15%的時間
記憶體:32Gb
- 記憶體:總計 32922024k,已使用 32817492k,可用 104580k,147464k 緩衝區
- 交換:總計 33551744k,已使用 148k,免費 33551596k,記憶體 15231864k
伺服器堆棧是…
- 網路邏輯 11g
- jrockit 1.6
- 紅帽Linux 5.8(64位)
我想知道為什麼該程序被殺死。我該怎麼辦?
如果您需要更多資訊,請回答。
所有的答案都會對我有所幫助。
謝謝。
附加資訊。
- 之前的最後一個日誌,但是這個日誌是經常出現的。
<
$$ ServletContext@228988411[app:Recruit-Front module:WebContent path:/recruit spec-version:2.5 $$] Servlet 因異常而失敗 java.lang.NullPointerException 在 cj.recruit.syscommon.filter.SessionLocaleFilter.doFilter(SessionLocaleFilter.java:41) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 frameone.core.common.web。 filter.EnvironmentSetupFilter.doFilter(EnvironmentSetupFilter.java:88) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 cj.recruit.syscommon.filter.CrossScriptingFilter.doFilter(CrossScriptingFilter.java:22) 在 weblogic .servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.wrapRun(WebAppServletContext.java:3730) at weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run(WebAppServletContext.java:3696) 在 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 在 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 在 weblogic.servlet .internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273) 在 weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490) 在 weblogic。 weblogic.work.ExecuteThread.run(ExecuteThread.java:221) 上的 work.ExecuteThread.execute(ExecuteThread.java:256)
<
$$ ServletContext@228988411[app:Recruit-Front module:WebContent path:/recruit spec-version:2.5 $$] Servlet 因異常 java.lang.NullPointerException 而失敗 在 cj.recruit.syscommon.filter.SessionLocaleFilter.doFilter(SessionLocaleFilter.java:41) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 frameone.core.common.web.filter.EnvironmentSetupFilter.doFilter (EnvironmentSetupFilter.java:88) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 cj.recruit.syscommon.filter.CrossScriptingFilter.doFilter(CrossScriptingFilter.java:22) 在 weblogic.servlet.internal。 FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.wrapRun(WebAppServletContext.java:3730) at weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run(WebAppServletContext.java:3696) 在 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 在 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 在 weblogic.servlet .internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273) 在 weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490) 在 weblogic。 weblogic.work.ExecuteThread.run(ExecuteThread.java:221) 上的 work.ExecuteThread.execute(ExecuteThread.java:256)
- 另一個 JAVA 程序(ps -ef | grep java)
- 另一個伺服器 Java 程序
ps -ef | grep java
oraehrp 818 786 0 19:34 pts/1 00:00:00 grep java
根 9689 1 1 2015 ?1-01:05:58 /usr/java/jdk1.6.0_23/bin/java -Djava.awt.headless=true -jar /app/CJ_agent//cjagent.jar /app/CJ_agent//conf/cjagent.conf
oraehrp 10128 10074 2 2015?1-10:06:08 /usr/java/jrockit1.6/bin/java -jrockit -Xms1024m -Xmx1024m -Dweblogic.Name=EHRREP1 -Djava.security.policy=/app/oraehrp/bea/wlserver_10.3/server /lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Dweblogic.security.SSL.trustedCAKeyStore=/app/oraehrp/bea/wlserver_10.3/server/lib/cacerts -Dframeone.webapps=/svcroot/runtime/webapps -Dfile .encoding=UTF-8 -Djava.security.egd=file:///dev/urandom -da -Dplatform.home=/app/oraehrp/bea/wlserver_10.3 -Dwls.home=/app/oraehrp/bea/ wlserver_10.3/server -Dweblogic.home=/app/oraehrp/bea/wlserver_10.3/server -Dweblogic.management.discover=false -Dweblogic.management.server=t3://52.2.205.138:7001 -Dwlw.iterativeDev =假-Dwlw.testConsole=假-Dwlw.logErrorsToConsole=假-Dweblogic.ext。
oraehrp 14795 14740 2 2015?1-10:31:48 /usr/java/jrockit1.6/bin/java -jrockit -DAdminServer -Xms1024m -Xmx1024m -verbosegc -Dweblogic.Name=AdminServer -Djava.security.policy=/app/oraehrp/bea/wlserver_10 .3/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -da -Dplatform.home=/app/oraehrp/bea/wlserver_10.3 -Dwls.home=/app/oraehrp/bea/wlserver_10.3/server -Dweblogic.home=/app/oraehrp/bea/wlserver_10.3/server -Dweblogic.management.discover=true -Dwlw.iterativeDev=false -Dwlw.testConsole=false -Dwlw.logErrorsToConsole=false -Dweblogic.ext.dirs= /app/oraehrp/bea/patch_wls1036/profiles/default/sysext_manifest_classpath:/app/oraehrp/bea/patch_ocp371/profiles/default/sysext_manifest_classpath weblogic.Server
oraehrp 23456 23395 67 18:25?00:46:23 /usr/java/jrockit1.6/bin/java -jrockit -Xms2048m -Xmx2048m -Xns:256m -Xverbose:gc -Xverboselog:/svcroot/logs/was/domains/HREHRP/EHRPRD11/gclogs/gc .EHRPRD11_20160201_182544.out -Dweblogic.Name=EHRPRD11 -Djava.security.policy=/app/oraehrp/bea/wlserver_10.3/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Dweblogic.security.SSL.trustedCAKeyStore= /app/oraehrp/bea/wlserver_10.3/server/lib/cacerts -Dweblogic.threadpool.MinPoolSize=100 -Xbootclasspath/p:/app/oraehrp/jennifer/agent/lwst.jdk.jar:/app/oraehrp/jennifer /agent/lwst.boot.jar:/app/oraehrp/jennifer/agent/jennifer.boot.jar -Djennifer.config=/app/oraehrp/jennifer/agent/E11.conf -javaagent:/app/oraehrp/jennifer/代理/lwst.javaagent.jar -Dframeone.webapps=/svcroot/runtime/webapps -Dfile.encoding=UTF-8 -Djava.security.egd=文件:
oraehrp 24233 24179 49 18:27?00:33:03 /usr/java/jrockit1.6/bin/java -jrockit -Xms2048m -Xmx2048m -Xns:256m -Xverbose:gc -Xverboselog:/svcroot/logs/was/domains/HREHRP/EHRPRD12/gclogs/gc .EHRPRD12_20160201_182747.out -Dweblogic.Name=EHRPRD12 -Djava.security.policy=/app/oraehrp/bea/wlserver_10.3/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Dweblogic.security.SSL.trustedCAKeyStore= /app/oraehrp/bea/wlserver_10.3/server/lib/cacerts -Dweblogic.threadpool.MinPoolSize=100 -Xbootclasspath/p:/app/oraehrp/jennifer/agent/lwst.jdk.jar:/app/oraehrp/jennifer /agent/lwst.boot.jar:/app/oraehrp/jennifer/agent/jennifer.boot.jar -Djennifer.config=/app/oraehrp/jennifer/agent/E12.conf -javaagent:/app/oraehrp/jennifer/代理/lwst.javaagent.jar -Dframeone.webapps=/svcroot/runtime/webapps -Dfile.encoding=UTF-8 -Djava.security.egd=文件:
oraehrp 25006 24944 53 18:29?00:34:35 /usr/java/jrockit1.6/bin/java -jrockit -Xms2048m -Xmx2048m -Xns:256m -Xverbose:gc -Xverboselog:/svcroot/logs/was/domains/HREHRP/EHRPRD13/gclogs/gc .EHRPRD13_20160201_182933.out -Dweblogic.Name=EHRPRD13 -Djava.security.policy=/app/oraehrp/bea/wlserver_10.3/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Dweblogic.security.SSL.trustedCAKeyStore= /app/oraehrp/bea/wlserver_10.3/server/lib/cacerts -Dweblogic.threadpool.MinPoolSize=100 -Xbootclasspath/p:/app/oraehRP/jennifer/agent/lwst.jdk.jar:/app/oraehrp/jennifer /agent/lwst.boot.jar:/app/oraehrp/jennifer/agent/jennifer.boot.jar -Djennifer.config=/app/oraehrp/jennifer/agent/E13.conf -javaagent:/app/oraehrp/jennifer/代理/lwst.javaagent.jar -Dframeone.webapps=/svcroot/runtime/webapps -Dfile.encoding=UTF-8 -Djava.security.egd=文件:
這是由於記憶體不足。您的可用 RAM 略少於 300MB(免費+緩衝區),每個新的 weblogic Java 實例將佔用 3GB。
Linux 核心有一個稱為 OOM 殺手的功能,當記憶體不足時,它會殺死一個隨機程序。
看看那些 JAVA 參數和失控的 Java 腳本。您正在使用大量 RAM。
評估是否需要微調 Java Xms/Xmx 或向伺服器添加更多 RAM。
我現在有機會檢查 WebLogic 需求。正如自定義 WebLogic JVM 堆大小所述:
WebLogic 的預設 JVM 堆大小為 3GB。… USER_MEM_ARGS="-Xms128m -Xmx3072m …
注意128m,推薦配置是啟動程序時給它128m,根據需要增長到3GB。
Xms 是分配的最小記憶體,Xmx 是最大記憶體。如果將 Xms 更改為 128m,執行緒只會在啟動時用完所需的記憶體,預設情況下不會一次用完 3GB。隨著時間的推移,這可能會使用更少的 RAM。
From啟動 JVM 時的 Xms 和 Xmx 參數是什麼?
標誌 Xmx 指定 Java 虛擬機 (JVM) 的最大記憶體分配池,而 Xms 指定初始記憶體分配池。記憶體標誌也可以指定為多種大小,例如千字節、兆字節等。
在此更改之後,我還將評估您是否需要更多 RAM,因為您現在擁有的值不足以進行正確的操作(例如太低)。