服务版的tomcat7如何调参数,Jprofiler如何测试是否内存溢出

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/iteye_14017/article/details/82566754
问题:

1、我安装的是服务版的tomcat7,用的是Struts2 Spring3中的jdbctemplete jquery oracle开发的项目,现在感觉内存总溢出,我把manager中的JVM情况发下看看【具体看上传的01.jpg文件】
2、tomcat7我设的参数如上,具体的我也不知道对不对,做什么用的也不知道,是从网上找的【具体看上传的02.jpg】
3、Visualvm监控图如下,我也不会看,不知道有没有问题【具体看上传的03.jpg、04.jpg文件】
4、如何避免内存溢出,代码上有啥好的建议和要求
5、那位对jprofiler熟悉,可否指点下,我怎么看那个类那个方法存在问题,怎么改法等等。
6、TOMCAT都需设置那些,有啥要求,oracle有啥调配的参数等

还请大侠们多多指点,再下不胜感激~~
展开阅读全文

tomcat7如何分割日志

04-22

网上找了很多自动分割tomcat的catalina.out日志文件的方法,大部分都是说通过cronolog来进行分割,但是都是针对tomcat7以前的旧版本的,我用的是tomcat7,按照这些方法都有问题,具体如下:rn1、安装cronolog,路径为:/usr/local/sbin/cronologrn2、修改bin/catalina.sh文件的两处地方,标红的为修改的内容,具体如下:rn(1)if [ -z "$CATALINA_OUT" ] ; thenrn [color=#FF0000]CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out[/color]rnfirn改为:rnif [ -z "$CATALINA_OUT" ] ; thenrn [color=#FF0000]CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out[/color]rnfirn(2)[color=#FF0000]touch "$CATALINA_OUT"[/color] rnif [ "$1" = "-security" ] ; thenrn if [ $have_tty -eq 1 ]; thenrn echo "Using Security Manager"rn firn shiftrn eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \rn -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \rn -Djava.security.manager \rn -Djava.security.policy==\"$CATALINA_BASE/conf/catalina.policy\" \rn -Dcatalina.base=\"$CATALINA_BASE\" \rn -Dcatalina.home=\"$CATALINA_HOME\" \rn -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \rn [color=#FF0000]org.apache.catalina.startup.Bootstrap "$@" start \rn >> "$CATALINA_OUT" 2>&1 "&"[/color] rn elsern eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \rn -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \rn -Dcatalina.base=\"$CATALINA_BASE\" \rn -Dcatalina.home=\"$CATALINA_HOME\" \rn -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \rn [color=#FF0000]org.apache.catalina.startup.Bootstrap "$@" start \rn >> "$CATALINA_OUT" 2>&1 "&"[/color]rn rnrn firnrn if [ ! -z "$CATALINA_PID" ]; thenrn echo $! > "$CATALINA_PID"rn firn改为:rn[color=#FF0000]# touch "$CATALINA_OUT"[/color] rnif [ "$1" = "-security" ] ; thenrn if [ $have_tty -eq 1 ]; thenrn echo "Using Security Manager"rn firn shiftrn eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \rn -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \rn -Djava.security.manager \rn -Djava.security.policy==\"$CATALINA_BASE/conf/catalina.policy\" \rn -Dcatalina.base=\"$CATALINA_BASE\" \rn -Dcatalina.home=\"$CATALINA_HOME\" \rn -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \rn [color=#FF0000]org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \rn | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &[/color]rn elsern eval \"$_RUNJAVA\" \"$LOGGING_CONFIG\" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \rn -Djava.endorsed.dirs=\"$JAVA_ENDORSED_DIRS\" -classpath \"$CLASSPATH\" \rn -Dcatalina.base=\"$CATALINA_BASE\" \rn -Dcatalina.home=\"$CATALINA_HOME\" \rn -Djava.io.tmpdir=\"$CATALINA_TMPDIR\" \rn [color=#FF0000]org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \rn | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &[/color]rnrn firnrn if [ ! -z "$CATALINA_PID" ]; thenrn echo $! > "$CATALINA_PID"rn firn3、修改完毕,启动tomocat,报错如下:rnUsing CATALINA_BASE: /usr/local/tomcat-7.0.39rnUsing CATALINA_HOME: /usr/local/tomcat-7.0.39rnUsing CATALINA_TMPDIR: /usr/local/tomcat-7.0.39/temprnUsing JRE_HOME: /usr/local/jdk1.7.0_17/jrernUsing CLASSPATH: /usr/local/tomcat-7.0.39/bin/bootstrap.jar:/usr/local/tomcat-7.0.39/bin/tomcat-juli.jarrn用法: java [-options] class [args...]rn (执行类)rn 或 java [-options] -jar jarfile [args...]rn (执行 jar 文件)rn其中选项包括:rn -d32 使用 32 位数据模型 (如果可用)rn -d64 使用 64 位数据模型 (如果可用)rn -server 选择 "server" VMrn 默认 VM 是 server,rn 因为您是在服务器类计算机上运行。rnrnrn -cp rn -classpath rn 用 : 分隔的目录, JAR 档案rn 和 ZIP 档案列表, 用于搜索类文件。rn -D=rn 设置系统属性rn -verbose[:class|gc|jni]rn 启用详细输出rn -version 输出产品版本并退出rn -version:rn 需要指定的版本才能运行rn -showversion 输出产品版本并继续rn -jre-restrict-search | -no-jre-restrict-searchrn 在版本搜索中包括/排除用户专用 JRErn -? -help 输出此帮助消息rn -X 输出非标准选项的帮助rn -ea[:...|:]rn -enableassertions[:...|:]rn 按指定的粒度启用断言rn -da[:...|:]rn -disableassertions[:...|:]rn 禁用具有指定粒度的断言rn -esa | -enablesystemassertionsrn 启用系统断言rn -dsa | -disablesystemassertionsrn 禁用系统断言rn -agentlib:[=]rn 加载本机代理库 , 例如 -agentlib:hprofrn 另请参阅 -agentlib:jdwp=help 和 -agentlib:hprof=helprn -agentpath:[=]rn 按完整路径名加载本机代理库rn -javaagent:[=]rn 加载 Java 编程语言代理, 请参阅 java.lang.instrumentrn -splash:rn 使用指定的图像显示启动屏幕rn有关详细信息, 请参阅 http://www.oracle.com/technetwork/java/javase/documentation/index.html。rnrn请教各位高手,应该如何分割tomcat的日志,上面这种方法是否可行,如何修改才能生效?rn另外还可以采用其他什么方法,具体那种方法最好,谢谢! 论坛

c# webService调用报内存溢出

05-05

请高手解答,rn小弟最近用c#开发了一个利用WebService作单点认证的程序,但是出现了内存溢出的问题,在用户数少的时候是没有问题的,但是一旦达到了上千个用户的时候就报一个错,如下:rnrn发生类型为 System.OutOfMemoryException 的异常。rn说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 rn异常详细信息: System.OutOfMemoryException: 发生类型为 System.OutOfMemoryException 的异常。 rn源错误: rn执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 rn堆栈跟踪:rn [OutOfMemoryException: 发生类型为 System.OutOfMemoryException 的异常。]rnrnSystem.OutOfMemoryException: 发生类型为 System.OutOfMemoryException 的异常。 --- 内部异常堆栈跟踪的结尾 --- at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at Security.Portal.UserAppPurview.GetUserPassportFromToken(String strToken) at Security.UserInfo.GetUserInfoFromToken(String token) at XJEIS.Privilage.CheckPrivilage(String token) at XJEIS.index.Page_Load(Object sender, EventArgs e)c:\inetpub\wwwroot\NewBusiness --> rnrnrn感觉十分奇怪,还请各位高手赐教,小弟我在线等待。rnrn 论坛

没有更多推荐了,返回首页