Tomcat配置虚拟内存

一、Tomcat启动参数

 JAVA_OPTS参数说明 
  -server     启用jdk 的 server 版; 
  -Xms java     虚拟机初始化时的堆最小内存; 
  -Xmx java     虚拟机可使用堆的最大内存; 
  -XX: PermSize     非堆内存永久保留区域 
  -XX:MaxPermSize   非堆内存最大永久保留区域 
  服务器参数配置

  现公司服务器内存一般都可以加到最大2G ,所以可以采取以下配置:

  JAVA_OPTS=’-Xms1024m -Xmx2048m -XX: PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m’

  配置完成后可重启Tomcat

 

二、堆内存设置

A、window设置Tomcat

(1)第一种方法:修改 tomcat/bin/catalina.bat 文件

增加一行 set JAVA_OPTS=-Xms256m -Xmx1024m

 

也可以set CATALINA_OPTS="-Xmx512m -Xms512m -Xmn64m -Xss2m"

设置CATALINA_OPTS 和  JAVA_OPTS都是一个道理,在启动tomcat的时候设置参数。

两者区别是JAVA_OPTS在tomcat停止的时候也会执行这个命令。

 

(2)第二种方法:环境变量中设置

变量名:JAVA_OPTS

变量值:-Xms512m-Xmx512m

 

(3)第三种方法:前两种方法针对的是bin目录下有catalina.bat的情况(比如直接解压的Tomcat等),但是有些安装版的Tomcat下没有catalina.bat,这个时候可以采用如下方法,当然这个方法也是最通用的方法

打开tomcatHome\bin\tomcat5w.exe,点击Java选项卡,然后将会发现其中有这么两 项:

Initialmemorypool和Maximummemorypool.Initialmemorypool这个就是初始化设置的内存的大小。

Maximummemorypool这个是最大内存的大小设置完了就按确定然后再重启TOMCAT你就会发现tomcat中jvm可用的内存改变了。

 

B、Linux 系统修改Tomcat

(1)修改 tomcat/bin/catalina.sh 文件

增加  JAVA_OPTS="-Xms256m -Xmx1024m"

 

也可以set CATALINA_OPTS="-Xmx512m -Xms512m -Xmn64m -Xss2m"

设置CATALINA_OPTS 和  JAVA_OPTS都是一个道理,在启动tomcat的时候设置参数。

两者区别是JAVA_OPTS在tomcat停止的时候也会执行这个命令。

 

(2)和(3)与上面window配置一样

 

三、永久保存区域

  PermGen space的全称是Permanent Generation space,是指内存的永久保存区域。这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。

一般是加大-XX:PermSize  -XX:MaxPermSize 来解决问题。

    -XX:PermSize 永久保存区域初始大小

    -XX:PermSize 永久保存区域初始最大值

    如 set JAVA_OPTS= -Xms1024m -Xmx1024m  -XX:PermSize=128M -XX:PermSize=256M

    注意:   java -Xmx1024m -Xms1024m -Xmn256m -Xss16m  Test  (Test是一个class文件)命令来测试的最大堆内存是 -Xmx与 -XX:PermSize的和。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/331416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ISO语言代码和国家代码+Locale常量+ISO货币符号

【1】ISO语言代码和国家代码 【2】Locale常量 【3】ISO货币符号

djl和ljl_使用Spring Boot和DJL进行深度学习

djl和ljl总览 这是Spring Boot上的另一篇文章 ,该文章将展示如何使用Deep Java Library (DJL)构建示例Web应用程序, Deep Java Library (DJL)是Java的开源深度学习库,用于诊断X射线图像上的COVI…

java BigDecimal八种舍入模式

一、BigDecimal介绍java.math.BigDecimal不可变的immutable、任意精度的有符号十进制数。BigDecimal 由任意精度的整数非标度值和32位的整数标度(scale)组成。标度(scale)如果为零或正数,则标度是小数点后的位数。如果为负数,则将该数的非标度值乘以10的…

java国际化——资源包

【0】README 1) 本文部分文字描述转自 core java volume 2 , 旨在理解 java国际化——资源包 的基础知识 ; 2) 本文源代码idea 转自: (利用properties 文件进行国际化)https://docs.oracle.co…

ui自动化测试测试报告_您需要了解的有关UI测试的所有信息

ui自动化测试测试报告让我们从一个问题开始。 用户在网站上进行互动的第一件事是什么? 接口,当然。 网站的外观是在用户身上产生“第一印象”的第一件事。 交互式Web应用程序可以为用户带来成败,这就是为什么越来越多的人选择对其Web应用程序…

Tomcat解决HTTP GET中文乱码

一、中文乱码原因 Tomcat默认是按ISO-8859-1进行URL解码,ISO-8859-1并未包括中文字符,中文字符不能被正确解析了。 二、配置编码 在tomcat的conf/server.xml下的connetor属性中增加URIEncoding或者useBodyEncodingForURI属性 (1&#xff0…

NanoHTTPD web server的一个简单荔枝

【0】README 0.1)本文旨在演示一个简单荔枝,以说明如何使用 NanoHTTPD web server 和 浏览器访问 该server的效果 -------------------------------------------------------------- App.java public class App extends NanoHTTPD {public App() thr…

throwable_您想了解的所有Throwable

throwable本文是有关异常的教程。 但不是通常的一种。 其中有许多内容可以告诉您异常的含义,如何抛出异常,捕获异常,已检查异常和运行时异常之间的区别,等等。 没有必要了。 这对您来说也很无聊。 如果没有,那么请阅读…

Linux Tomcat安装

一、linux 安装软件的步骤 (1)下载软件的压缩包 (2)解压到指定的目录 (3)配置环境变量 ,配置PATH(在任意目录启动,这PATH可以省略,若不配置只有安装目录才…

java分布式对象(RMI+部署使用RMI的程序)

【0】README 1)本文文字转自 core java volume 2, 旨在学习 java 分布式对象的相关知识; 2) RMI 的实例程序为原创; 3) RMI部署步骤的测试用例,参见 http://blog.csdn.net/pacosonswjtu/arti…

java 创建uri_使用UriBuilder快速创建URI

java 创建uri如果您有权访问JAX-RS API和项目中的实现(很多),则可以使用JAX-RS的UriBuilder通过使用可解析占位符的构建器模式方便地创建URI。 看下面的例子: String host System.getProperty( "host" , "localh…

Tomcat 服务自动启动

一、配置/etc/rc.local rc.local是linux启动init之后执行的脚本。 sudo vi /etc/rc.local 添加如下一行 /home/myuser/software/apache-tomcat-7.0.29/bin/startup.sh(脚本绝对路径) 二、sysv-rc-conf 工具配置 1、安装 sysv-rc-conf sudo apt-get …

java分布式对象RMI应用测试用例

【0】README 0.1)本文旨在对http://blog.csdn.net/PacosonSWJTU/article/details/50705192 中的代码进行实践(如何部署一个使用RMI框架的程序以进行远程调用); 0.2) for complete source code, please visit https…

neo4j 迁移_在Kubernetes中迁移Neo4j图模式

neo4j 迁移在零停机时间下运行企业应用程序时,我们需要能够执行数据库架构迁移而又不中断活动用户。 这不仅对于关系数据库很重要,而且对于诸如Neo4J之类的图数据库也很重要,后者不会在write上强制执行架构。 但是,重构图形并使图…

Windows访问Linux的Tomcat,显示无法连接

一、端口占用 先查看tomcat下的logs日志文件,如果现实地址已被占用,则需重新修改端口。 tomcat默认启动的是8080,如果你想修改为80,则需要修改server.xml文件:vim $CATALINA_HOME/conf/server.xml #如果没有配置$CATALINA_HOME&am…

java分布式对象——远程方法中的参数和返回值+远程对象激活

【0】README 1)本文文字描述转自 core java volume 2, 旨在学习 java分布式对象——远程方法中的参数和返回值远程对象激活 的相关知识; 【1】远程方法中的参数和返回值 1) 在开始进行远程方法调用时,调用参数需要从…

wcf:rest_REST:管理多对多关系

wcf:rest介绍 管理多个资源之间的关系可能是RESTful API的重要组成部分。 在这篇文章中,我们将看到使用REST API可以管理多对多关系。 我们以一个简单的用户 / 组关系为例。 假设用户和组是两个单独的资源(例如/ users和/ groups )&#xff…

java安全——类加载器+字节码校验+安全管理器与访问权限

【0】README 0.1)本文文字描述转自 core java volume 2,旨在学习 java安全 的相关知识; 【1】类加载器 1)java 技术提供了以下3种确保安全的机制(mechanism): m1)语言设计特性&am…

Tomcat的web项目部署方式

一、host配置Context 在tomcat中的conf目录中&#xff0c;在server.xml中的&#xff0c;<host/>节点中添加&#xff1a; <Context path"/app" docBase"D:/myeclipse/firstapp/WebRoot" debug"0" privileged"true" reloadab…

java.rmi.UnmarshalException:errorunmarshalling return; java.lang.ClassNotFoundException的解决方法

1&#xff09;problem 出现 java.rmi.UnmarshalException: error unmarshalling return; nested exception is: java.lang.ClassNotFoundException 异常的原因是&#xff0c;在命令行执行 rmiregistry&#xff0c;并没有指定好 绑定时查找的类文件的路径。 …