文档章节

tomcat 内存

zvc888
 zvc888
发布于 2014/12/12 13:17
字数 446
阅读 93
收藏 1

Tomcat启动内存设置  


1.startup.bat启动

在tomcat_home/bin目录下找到catalina.bat,用文本编辑器打开,加上下面一行:

set JAVA_OPTS= -Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=256M

解释一下各个参数:

-Xms1024M:初始化堆内存大小(注意,不加M的话单位是KB)

-Xmx1029M:最大堆内存大小

-XX:PermSize=256M:初始化类加载内存池大小

-XX:MaxPermSize=256M:最大类加载内存池大小

-XX:MaxNewSize=256M:这个还不清楚哈,有知道的说声

还有一个-server参数,是指启动jvm时以服务器方式启动,比客户端启动慢,但性能较好,大家可以自己选择。

2.windows服务启动

       如果你的tomcat是注册为windows服务并且是以服务方式启动的,那么上面的方法就无效了,因为这时tomcat启动是读取注册表的参数,而不是读取批处理文件的参数,这时我们有两种方法来设置jvm参数。

第一种比较简单,tomcat为我们提供了一个设置启动参数的窗体,双击tomcat_home/bin目录下的tomcat6w.exe,如图

Tomcat启动内存设置 - 一个人失眠 - 渴望

下方的Initial memory pool就是初始化堆内存大小,Maximun memory pool是最大堆内存大小。

而要设置Perm Gen池的大小就要在Java Option里面加参数了,在里面加上:

-Dcatalina.base=%tomcat_home%

-Dcatalina.home=%tomcat_home%

-Djava.endorsed.dirs=%tomcat_home%\endorsed

-Djava.io.tmpdir=%tomcat_home%\temp

-XX:PermSize=256M

-XX:MaxPermSize=256M

-XX:ReservedCodeCacheSize=48M

-Duser.timezone=GMT+08

(PS:网上说每一行后面不要有空格,没试过)

第二种方法是打开注册表->HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat6\Parameters\Java(路径可能有一点点差别)

Tomcat启动内存设置 - 一个人失眠 - 渴望

修改Options的值,把刚才上面那些参数加进去就OK了。(别忘了先备份一下注册表)

原文

本文转载自:http://blog.csdn.net/vc_super/article/details/38532139

zvc888
粉丝 5
博文 107
码字总数 17062
作品 0
深圳
程序员
私信 提问
如何减少tomcat内存使用量?

最近有部分用户会问,为什么我的tomcat占用的内存这么高?如何才能把他减少点呢? 其实减少tomcat的内存使用量比较难,但是我们还是有一些办法的! 要想减少tomcat内存使用量,就必须对tomcat和内存...

巴顿
2016/01/06
149
3
linux下Tomcat7的安装

tomcat的安装比较简单,基本上是下载安装包--》解压--》启动的过程。 这里主要说明一些需要注意的地方: Tomcat需要JDK的支持,所以在安装Tomcat之前需要先安装JDK,参考《linux下JDK的安装》...

micical
2015/10/29
0
0
【译】关于 “Tomcat 7 内存泄漏保护” 的访谈

今年年初,DZone 网站对 Mark Thomas 针对 Tomcat 7 的内存泄漏保护的功能进行了采访,Mark Thomas 是 SpringSource 的首席软件工程师,同时也是 Tomcat 的代码提交负责人。 在 Tomcat 7 中引...

鉴客
2010/06/09
1K
5
60扩展:tomcat虚拟主机

1、有时候tomcat虚拟主机在在自建目录文件docBase里,重启无法启动的: 注释:Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机。Tomcat的内存溢出本质就...

芬野de博客
2018/09/01
0
0
Tomcat 内存溢出及解决办法

一、 tomcat内存设置问题 收藏 在使用Java程序从数据库中查询大量的数据或是应用服务器(如tomcat、jboss,weblogic)加载jar包时会出现java.lang.OutOfMemoryError异常。这主要是由于应用服务器...

vincent927
2016/01/27
68
0

没有更多内容

加载失败,请刷新页面

加载更多

NIO基于长度域的报文在Netty下的解码

1, 先复习一下粘包/拆包 1.1, 粘包/拆包的含义 TCP是个“流”协议, 并不了解上层业务数据的具体含义, 它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP...

老菜鸟0217
今天
8
0
从零开始搭建spring-cloud(2) ----ribbon

在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。 其实我们已经在上...

Vincent-Duan
今天
19
0
get和post的区别?

doGet:路径传参。效率高,安全性差(get的传送数据量有限制,不能大于2Kb) doPOST:实体传参。效率低,安全性好 建议: 1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Pos...

花无谢
昨天
4
0
当谈论迭代器时,我谈些什么?

当谈论迭代器时,我谈些什么? 花下猫语:之前说过,我对于编程语言跟其它学科的融合非常感兴趣,但我还说漏了一点,就是我对于 Python 跟其它编程语言的对比学习,也很感兴趣。所以,我一直...

豌豆花下猫
昨天
14
0
10天学Python直接做项目,我做了这5件事

初学者如何尽快上手python? 市面上关于如何学python的资料很多,但是讲的都太复杂。 我就是很简单的几句话,从小白到开发工程师,我只做了五件事。 我觉得任何商业计划书如果不能用几句话讲...

Python派森
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部