求救:weblogic老死!!!

stiven0 2005-02-16 11:50:24
apache + weblogic7.0 + oracle8i

4台web server
2台db server
f5 bigip 做负载

目前首页日访问量在8--10万,最近一个多月以来老不明原因的down掉,我一直没搞定,痛苦不堪!


java.lang.OutOfMemoryError
<<no stack trace available>>
java.lang.OutOfMemoryError
<<no stack trace available>>
++ set +x

此是apache不down,而weblogic自动down掉,进程里看不到weblogic,而使用内存此时没有过总数的一半。

最近几乎每天down掉,人都要崩溃了,希望得到帮助!!!

新人,求指教,我的msn是 chaowenzhong@hotmail.com

帮我看看,谢谢万分!!
...全文
330 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
sgdb 2005-02-17
  • 打赏
  • 举报
回复
set MEM_ARGS= -XX:MaxPermSize=64m -ms256m -mx256m

只要不down,内存不回收没关系啊
stiven0 2005-02-17
  • 打赏
  • 举报
回复
加了这个-hotspot -XX:MaxPermSize=64m
内存使用仍然一直在递增,没有回收。
stiven0 2005-02-17
  • 打赏
  • 举报
回复
您的意思是在 startWebLogic.sh 里,改成下面这样吗?
sgdb(神天月晓):谢谢您!

# Set JAVA_OPTIONS to the java flags you want to pass to the vm. If there
# are more than one, include quotes around them. For instance:
# JAVA_OPTIONS="-Dweblogic.attribute=value -Djava.attribute=value"
JAVA_OPTIONS="-Dweblogic.security.SSL.trustedCAKeyStore=/home/weblogic/bea/weblogic700/server/lib/cacerts"

# Set JAVA_VM to the java virtual machine you want to run. For instance:
# JAVA_VM="-server"
JAVA_VM=""

# Set MEM_ARGS to the memory args you want to pass to java. For instance:
# MEM_ARGS="-Xms32m -Xmx200m"
-hotspot -XX:MaxPermSize=64m
MEM_ARGS="-Xms512m -Xmx512m"
stiven0 2005-02-17
  • 打赏
  • 举报
回复
刚才其他服务器相继down了,观测发现内存一直在慢慢占用,一直到过内存总数的一半多的时候,weblogic就down了,说明内存没有回收回来。

这是什么地方的原因呢,很是疑惑,程序问题?以前同样的程序为什么没有这个问题呢。

我后来改动的程序反复查看,也没发现有什么问题啊。

痛哭!!!
sgdb 2005-02-17
  • 打赏
  • 举报
回复
…… -hotspot -XX:MaxPermSize=64m ……
sgdb 2005-02-17
  • 打赏
  • 举报
回复
在-Xmx1024m 的前面
stiven0 2005-02-17
  • 打赏
  • 举报
回复
昨天晚上11点的时候,weblogic又down了,我已经将 -Xmx1024m 了。
无奈啊!


<Feb 16, 2005 11:21:11 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=6368892,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>
<Feb 16, 2005 11:21:50 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=6368892,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>
<Feb 16, 2005 11:22:44 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=6368892,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>


#
# HotSpot Virtual Machine Error, Internal Error
# Please report this error at
# http://java.sun.com/cgi-bin/bugreport.cgi
#
# Error ID: 4349254E560E43505000EC
#
# Problematic Thread: prio=1 tid=0x808e7d8 nid=0xc09 runnable
stiven0 2005-02-17
  • 打赏
  • 举报
回复
我的是linux系统,是启动 startWebLogic.sh

# Set MEM_ARGS to the memory args you want to pass to java. For instance:
# MEM_ARGS="-Xms32m -Xmx200m"
MEM_ARGS="-XX:MaxPermSize=64m -Xms512m -Xmx512m"

吗?
stiven0 2005-02-16
  • 打赏
  • 举报
回复
刚才又死了。

<Feb 16, 2005 12:21:29 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=2265586,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>
<Feb 16, 2005 12:21:49 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=2265586,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>
<Feb 16, 2005 12:21:57 PM CST> <Error> <HTTP> <101020> <[ServletContext(id=2265586,name=DefaultWebApp,context-p
ath=)] Servlet failed with Exception
java.lang.OutOfMemoryError
<<no stack trace available>>
>
#
# HotSpot Virtual Machine Error, Internal Error
# Please report this error at
# http://java.sun.com/cgi-bin/bugreport.cgi
#
# Error ID: 4349254E560E43505000EC
#
# Problematic Thread: prio=1 tid=0x55c07ce8 nid=0x407 runnable
stiven0 2005-02-16
  • 打赏
  • 举报
回复
怎么检查啊。
麻烦你了,能说详细些吗。
jFresH_MaN 2005-02-16
  • 打赏
  • 举报
回复
呵呵,原因很多
可能是你的字符串里的数据溢出了内存大小
或者容器的数据太大了
等等
stiven0 2005-02-16
  • 打赏
  • 举报
回复
jFresH_MaN(The answer is ......)

怎么检查,一般什么原因导致?
sgdb 2005-02-16
  • 打赏
  • 举报
回复
看weblogic的日志
以梦为马 2005-02-16
  • 打赏
  • 举报
回复
新春愉快!
jFresH_MaN 2005-02-16
  • 打赏
  • 举报
回复
是jvm的内存益出了,和你的机器内存没关系的
应该是你的程序有问题
stiven0 2005-02-16
  • 打赏
  • 举报
回复
sgdb(神天月晓)

-XX:MaxPermSize=64m 这个值在哪里设置??
sgdb 2005-02-16
  • 打赏
  • 举报
回复
要是内存足够大的话可以设为128m
sgdb 2005-02-16
  • 打赏
  • 举报
回复
唉!
你试试加上
-XX:MaxPermSize=64m 来启动weblogic吧
Alan 2005-02-16
  • 打赏
  • 举报
回复
注意一下你的代码里查询数据相关的部分,可能是使用Collection(或类似)一次导出的查询结果太多造成的,即便将jvm内存设为3g,当数据量上百万时也会出现OutOfMemoryError错误。
大数据量查询时,尽量将分页做到sql语句中,而不仅仅是对Resultset导出时的分页。
cslyaoyao 2005-02-16
  • 打赏
  • 举报
回复
呵呵,没事,朋友嘛。
其实我很菜的。
加载更多回复(10)
程声明:该课程是教学使用,视频内涉及漏洞利用方法,请勿在互联网环境中使用;维护互联网安全,人人有责。实验所需环境:vmware;kali虚拟机一台;windows server一台;有docker环境的Linux虚拟机环境下载地址在购买课程后单独发送 【课程配套资源】1、Python脚本(Margin老师自研,不光能学漏洞,还能学Python,实在是划算)2、与Margin老师实时互动3、免费的CISP-PTE考试技巧指导(Margin老师与CISP-PTE的负责人很熟的,非常多的一手消息^o^)4、Margin老师的内部直播可以优先参加5、Margin老师的课程基于CISP-PTE的知识体系进一步扩展,使课程内容更贴近实战   【课程主要解决问题】1、CSRF、SSRF搞不清楚?2、SSRF原理是什么?危害大小?如何利用SSRF获取主机权限?如果使用Python提高挖洞效率?3、Gopher协议、Dict协议?完全没听过啊,没关系,看完课程后你门清。4、SSRF渗透Redis数据库,Redis客户端和服务器端怎么通信?通信报文是怎么样的?看这里就行。5、SSRF渗透Struts2总是失败?不知道如何编码?不知道如何使用Gopher协议?来这里。6、SSRF表面简单,实则有无数坑,通过视频提高学习效率吧。 【CISP-PTE介绍】1、CISP-PTE是进入网络安全行业的TOP1认证,能帮你梳理完整的网络安全知识体系2、有PTE证书在网络安全公司是免技术笔试的,怎么样?是不是很棒。3、Margin老师的课程基于CISP-PTE的知识体系进一步扩展,使课程内容更贴近实战本课程属于CISP-PTE渗透测试工程师认证体系的课程,但内容更加丰富。CISP-PTE是国内第一个以动手实操为主的网络安全认证,该注册考试是为了锻炼考生世界解决网络安全问题的能力,持续增强我国的网络安全水平和防御能力,促进国内网络防御能力的不断提高。考试内容从多个层面进行,考点和网络安全动态相结合,真实的反应出真实的网络环境中发现的各种问题。如果要考取CISP-PTE证书需要掌握以下内容:1、Web安全基础,注入漏洞、上传漏洞、跨站脚本漏洞、访问控制漏洞、会话管理漏洞哦等。2、中间件的安全知识,如:Apache,IIS,Tomcat,以及 JAVA 开发的中间件 Weblogic,Jboss, Websphere 等,且要了解中间件加固方法,在攻与防的能力上不断提升。3、操作系统安全,包含Windows和Linux操作系统,从账户管理、文件系统权限、日志审计等方面讲解,了解常见的漏洞方式和加固方法。4、数据库安全,包含MSSQL、MYSQL、ORACLE、REDIS数据,了解常用的数据库漏洞和题全方法,保证数据库的安全性。 【关于Margin老师】· Margin/教育系统网络安全保障人员认证首批讲师/高级讲师· 擅长CTF/Web安全/渗透测试 /系统安全· 3年研发/擅长Java/Python/某银行现金循环机业务系统开发者· 曾参与开发网络安全认证教材· 知乎专栏/CISP-PTE渗透测试工程师学习· 4年线下网络安全讲师/2000+线下学员/100000+线上学员

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧