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. centos 关闭selinux

    将SELINUX配置文件设置为 disabled 模式,禁用SELinux vim /etc/selinux/config SELINUX=disabled 然后reboot重启生效 setenfor ...

  2. 使用DigitalOcean控制台访问Droplet(远程服务器)

    介绍 大多数用户将使用SSH,PUTTY或安装的控制面板管理他们的DigitalOcean Droplet. 但是,可能会出现阻止您使用这些方法访问Droplet的情况. 例如,更改网络或服务配置文件 ...

  3. MySQL语法和用户授权

    管理数据库 create database 等同于 create schema #导入数据库脚本     MariaDB [db1]> source /root/mysql/hellodb_in ...

  4. NYOJ 最长公共子序列

    # include<iostream> # include<string> # include<stdio.h> using namespace std; ][]; ...

  5. seller vue配置路径相对路径【组件 只写简单路径】

    在[webpack.base.conf.js]配置 'components': path.resolve(__dirname, '../src/components')

  6. Java 基础 常用API (System类,Math类,Arrays, BigInteger,)

    基本类型包装类 基本类型包装类概述 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类 ...

  7. Python Socket通信例子

    一.TCP 通信 服务端 #!/usr/bin/env python # -*- coding: utf-8 -*- # server_tcp.py import socket so = socket ...

  8. ssh 的认证原理

    SSH:Secure Shell,是一种网络安全协议,主要用于登录远程计算机的加密过程. 登录方式主要有两种: 1.基于用户密码的登录方式:   加密原理:   当服务器知道用户请求登录时,服务器会把 ...

  9. 【LeetCode每天一题】String to Integer (atoi)(字符串转换成数字)

    Implement atoi which converts a string to an integer.The function first discards as many whitespace ...

  10. JavaScript 基础数组循环和迭代的几种方法

    JavaScript 数组循环和迭代   (之前一直没怎么注意数组循环,今天做一道题时,用到forEach循环发现它并没有按照我想象的样子执行,总结一下数组循环) 一.第一种方法就是for()循环   ...