JVM--Java Virtual Machine,Java虚拟机;tomcat不是直接运行在物理操作系统上,而是运行在Java虚拟机上,通常说的配置jvm就是配置分配给Java虚拟机的内存大小;

如果使用vmware或virtualbox那么给虚拟机分配内存那是很好理解的,可以理解成jvm这个虚拟机就运行tomcat一个进程,所有jvm的内存全给tomcat使用。

一、查看当前配置的jvm大小

查看jvm大小配置只能到控制台“Server Status”那个页面去,由于tomcat默认没有用户的所以无法登录控制台,所以我们需要先配置用户以使能登录控制台。

1.1配置控制台用户

编缉$CATALINA_HOME/conf/tomcat-users.xml,在<tomcat-users>标签内添加以下内容:

<role rolename="manager-gui" />
<role rolename="admin-gui" />
<user username="admin" password="abcd1234" roles="manager-gui,admin-gui" />

1.2查看jvm配置情况

先重启tomcat使配置的用户生效,然后输入用户名密码登录“Server Status”

Free memory--当前分配给jvm的内存中还剩余的内存;Total memory--当前分配给jvm的内存大小;Max memory--最大可分配给jvm的内存大小。

二、修改jvm大小

编缉$CATALINA_HOME/bin/catalina.sh,在最前面(注释除外)添加:

JAVA_OPTS='-Xms512m -Xmx1024m'

-Xms表示初始分配给jvm的内存大小,-Xmx表示最大可分配给jvm的内存大小,根据自己需要修改。

重启tomcat使配置生效,然后再登录“Server Status”,再次查看jvm配置是否生效

三、说明

有些教程说直接添加JAVA_OPTS=-Xms512m -Xmx1024m,也就是没有单引号,实际测试发现这样是不生效的

最直接的是使用ps -ef | grep tomcat查看:

JAVA_OPTS=‘-Xms512m -Xmx1024m’结果如上图所示;可见有配置的jvm参数

JAVA_OPTS=-Xms512m -Xmx1024m结果如上图所示;可见没有配置的jvm参数(到server status也确认这样配置不生效,使用的是tomcat初始默认配置)

参考:

http://blog.csdn.net/zhenzhendeblog/article/details/50518685

http://www.cnblogs.com/thankyou/p/4352057.html

 
分类: Tomcat

tomcat查看并修改jvm大小的更多相关文章

  1. tomcat 查看和修改内存

    为了解决tomcat在大进行大并发请求时,出现内存溢出的问题,请修改tomcat的内存大小,其中分为以下两种方式: 一.使用 catalina.bat 等命令行方式运行的 tomcat 查看系统最大支 ...

  2. tomcat绿色版及安装版修改内存大小的方法

    1.对于安装版,比较方便了,直接运行tomcat6w.exe,选择Java选项卡, 在这里,可以设置初始化内存,最大内存,线程的内存大小. 初始化内存:如果机器的内存足够大,可以直接将初始化内存设置为 ...

  3. GC overhead limit exceeded,tomcat修改jvm内存

    tomcat修改jvm内存 内存大小:-Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxNewSize=256m -XX:MaxPermSize=512m -Dja ...

  4. Tomcat调整JVM大小,启动闪退

    Tomcat因调整过JVM运存大小,导致闪退:解决方法是: -XX:PermSize -XX:MaxPermSize 值调小些就可以了 set "JAVA_OPTS=-server -Xms ...

  5. myeclipse修改内存大小不足tomcat内存不足

    myeclipse修改内存大小不足 打开Windows-> Preferences -> Java->Installed JREs 点击右侧的jdk,然后点击“Edit”按钮 Def ...

  6. 服务器的tomcat调优和jvm调化

    下面讲述的是tomcat的优化,及jvm的优化 Tomcat 的缺省配置是不能稳定长期运行的,也就是不适合生产环境,它会死机,让你不断重新启动,甚至在午夜时分唤醒你.对于操作系统优化来说,是尽可能的增 ...

  7. java关于图片处理修改图片大小

    最近做了一个关于图片浏览的内容.因为图片都是一些证件的资料的扫描件所以比较大,对系统的影响也是非常之大的,有很大可能直接把系统干死.那么我是这么处理的,给大家分享一下.如果大家有好的方案的话一定要早点 ...

  8. Tomcat 调优及 JVM 参数优化

    Tomcat 本身与 JVM 优化 Tomcat:调整Server.xml JVM:bat启动服务方式的话修改catalina.bat 服务式启动的话参考:http://www.cnblogs.com ...

  9. 修改JVM的参数、Jstat、Jstack、gclog

    ---恢复内容开始--- 1. jetty 修改JVM的参数 deploy/bin/env.sh 在上面的环境变量脚本中进行修改:如果分配给JVM的内存是4g 这个里面的JAVA_OPTS 的配置项就 ...

随机推荐

  1. .NET Core 使用 Kestrel

    Kestrel介绍 Kestrel是一个基于libuv的跨平台web服务器 在.net core项目中就可以不一定要发布在iis下面了 Kestrel体验 可以使用useUrls来设置一个请求的地址 ...

  2. 记录关于vs2008 和vs2015 的报错问题

    出现了 VS2008无法创建项目,无法打开项目的情况,提示这个注册表键值有问题 HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MSBuild \ ToolsV ...

  3. MySQL无损复制(转)

    MySQL5.7新特性:lossless replication 无损复制 https://dev.mysql.com/doc/refman/5.7/en/replication-semisync.h ...

  4. Python3学习之路~4.2 迭代器

    可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list.tuple.dict.set.str等: 一类是generator,包括生成器和带yield的generator fun ...

  5. python基本运算符、比较运算符、赋值运算符、逻辑运算符

    # 基本运算符号: " + - * / % ** //" # a=20# b=30## print(a+b) #相加 当是: "+" a+b输出的结果:50## ...

  6. Android使得Fragment 切换时不重新实例化

    以前实现Fragment的切换都是用replace方法实现 public void startFragmentAdd(Fragment fragment) { FragmentManager frag ...

  7. 2019.03.23 Http

    自己也要分清楚  看清楚 request,response 一个是请求  一个是相应 行 头    之间还有个空行    体 HttpRequest请求对象(只读) 当用户访问一个视图函数时,Djan ...

  8. 我的Chrome插件

    1.AdBlock 用来屏蔽广告,用过的人都说好. 2.Flash Block(Plus) 用来限制Flash的播放. 3.Flash Control 用来限制Flash的播放. 4.Full Pag ...

  9. 《大道至简》第一章读后感Java伪代码

    在<大道至简>第一章中,周爱民先生引用一则<愚公移山>的寓言,引出了编程的根本:顺序.选择.循环.“愚公移山”的工程虽然庞大,但是可以通过极其简单的变成来完成.我身边的有一些人 ...

  10. apache mod_python 安装

    环境:Linux 2.6.32-431.23.3.el6.i686 1.安装python .tgz  ./configure --prefix=/usr/local/services/Python- ...