http://blog.csdn.net/huiwenjie168/article/details/7019303
安装目录下
eg:
D:\Program Files\Apache Software Foundation\Tomcat 5.5\bin\tomcat5w.exe
java 选项卡
Initial memory pool: 初始话的Java虚拟机内存大小,
Maxinum memory pool: Java虚拟机可使用的最大内存,
Thread stack size: 程序堆栈大小。
如果你是512M内存的话,Initial memory pool最好不要超过256M,
Maxinum memory pool不要超过512M,
Thread stack size不要动,使用默认的就好了。
用eclipse 配置tomcat内存问题
在tomcat下我不知道
不过如果你用IED是eclipse或者myeclipse的话,那么:
window-》preferences-》server-》tomcat5.x-》jdk
在optional java vm arguments中填入:
-Xms128m -Xmx512m -XX:MaxPermSize=128m 就可以了
值你自己改就行,一般的128就可以了。
1. 添加tomcat管理员帐户
添加管理员账户tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="admin" password="admin123" roles="admin,manager"/>
</tomcat-users>
2. TOMCAT内存
基本原理:JAVA程序启动时都会JVM 都会分配一个初始内存和最大内存给这个应用程序。这个初始内存和最大内存在一定程度都会影响程序的性能。比如说在应用程序用到最大内存的时候,JVM是要 先去做垃圾回收的动作,释放被占用的一些内存。 所以想调整Tomcat的启动时初始内存和最大内存就需要向JVM声明,一般的JAVA程序在运行都可以通过中-Xms -Xmx来调整应用程序的初始内存和最大内存: 如:java -Xms64m -Xmx128m application.jar.
方法1:如果是使用的tomcat_home/bin/catalina.sh(linux)或catalina.bat(win)启动的:
修改相应文件,加上下面这句:
JAVA_OPTS='$JAVA_OPTS -server -Xmx800m -Xms512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true'--ms是最小内存,mx是最大内存。这里设置最小内存为512M,最大内存为 800M。$JAVA_OPTS是保留先前设置。 CATALINA_OPTS似乎可以与JAVA_OPTS不加区别的使用。[对于catalina.bat则是如此设置: set JAVA_OPTS=-Xms1024m -Xmx1024m]
方法2:如果使用的winnt服务启动:
在命令行键入regedit,找到 HKEY_LOCAL_MACHINE-->SOFTWARE-->Apache Software Foundation-->Procrun 2.0-->Tomcat5-->Parameters的Java,
修改Options的值,新添加属性:
-Xms64m
-Xmx128m 或者直接修改JvmMx(最大内存)和JvmMs(最小内存)。
有人建议Xms和Xmx的值取成一样比较好,说是可以加快内存回收速度。
修改完之后,可以访问http://127.0.0.1:8080/manager/status查看内存大小。
也可以编写下面测试tomcat内存大小的jsp页面:
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("*** BEGIN MEMORY STATISTICS ***<br/>");
out.println("Free Memory: "+lRuntime.freeMemory()+"<br/>");
out.println("Max Memory: "+lRuntime.maxMemory()+"<br/>");
out.println("Total Memory: "+lRuntime.totalMemory()+"<br/>");
out.println("Available Processors : "+lRuntime.availableProcessors()+"<br/>");
out.println("*** END MEMORY STATISTICS ***");
%>
3. 增加tomcat连接数
在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout: 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。 其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。 web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。
如:
<Connector port="8080"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
acceptCount="100"
/>
maxThreads="150" 表示最多同时处理150个连接
minSpareThreads="25" 表示即使没有人使用也开这么多空线程等待
maxSpareThreads="75" 表示如果最多可以空75个线程,例如某时刻有80人访问,之后没有人访问了,则tomcat不会保留80个空线程,而是关闭5个空的。
acceptCount="100" 当同时连接的人数达到maxThreads时,还可以接收排队的连接,超过这个连接的则直接返回拒绝连接。
4.使用Jconsole监控
在需要监控的tomcat_home/bin/catalina.sh(linux)文件中添加下面语句:JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8089
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"
设置一个新的端口号。然后在本机dos下输入Jconsole命令,弹出“JAVA 监视和管理控制台”,如果是远程监视,就输入<hostname>:<port>,这个port就上上面配置的8089,然后再输入远程主机的用户名跟口令,就可以监控啦。
传说这里面还可以加一句话"-Djava.rmi.server.hostname=192.168.1.80" 没有试过 ⊙﹏⊙b汗 先拷贝上一句话,留作记忆:
再找找远程tomcat的jmx配置,多了个参数-Djava.rmi.server.hostname=ip_or_hostname。然后我就加上了服务器的IP。然后再连接就可以了。对这样的情况有点不解,再官方又没有找任何这个参数的说明。回来后,再试用一下。在虚拟机的开一个linux,然后配上jmx参数(没有java.rmi.server.hostname的)。结果可以连接。... 公司的为什么不能连接呢?为什么加了IP就行?怀疑多网卡。然后在虚拟机上再加一个网上,然后启动 tomcat ,恩,不能连接(没有server.hostname),然后再加上java.rmi.server.hostname启动 tomcat ,结果或以连接。原来java.rmi.server.hostname是这个作用。
相关推荐
对于高并发,可以增加`maxThreads`属性,这是Tomcat可以同时处理的最大线程数。例如,可以设置为`maxThreads="2000"`以应对1000 QPS的需求,但也要考虑到服务器的资源限制,避免过度消耗内存。 2. **配置...
作者通过深入分析Tomcat的源码,揭示了Tomcat如何处理并发请求,以及如何配置和调整以应对大规模并发访问。文章链接为<https://zepeng06630925.iteye.com/blog/907364>,提供了丰富的实践经验和具体设置建议。 ...
在JBOSSTomcat服务器的性能优化中,最大连接数配置和JVM内存配置是两个至关重要的环节,它们直接影响到服务器的响应速度和稳定性,尤其对于处理大量并发请求的场景。 首先,我们来看JBOSS最大连接数的配置。在`...
3. **最大线程数**:在`<Connector>`元素中,可以设置`maxThreads`和`minSpareThreads`属性来调整线程池大小,以控制并发处理能力。这在预期高并发访问时尤其重要。 4. **内存配置**:在`bin/catalina.sh`或`bin/...
标题中的“Tomcat配置连接数(优化)”指的是在Apache Tomcat服务器中调整与处理并发请求相关的设置,以提升服务器的性能和稳定性。这通常涉及到调整最大连接数、线程池大小、超时时间等核心参数。在高并发场景下,...
### 如何配置Tomcat的JVM虚拟机内存大小:深入解析与最佳实践 #### 引言 在IT领域,特别是Web应用服务器管理中,正确配置Java虚拟机(JVM)的内存大小对于确保应用程序的稳定性和性能至关重要。本文将详细探讨如何...
本篇将深入探讨如何在Tomcat上发布JavaWeb项目,以及如何进行Tomcat的配置优化,包括去除项目名称和端口号、调整内存配置和设置并发线程数。 【去除项目名称和端口号】 在默认情况下,访问JavaWeb项目时URL中会...
在调整Tomcat的并发线程数以提高服务器...总结来说,调整Tomcat的并发线程数是一个涉及多个配置项的综合过程,必须根据服务器的实际性能和资源状况来适当调整,以达到提升并发数的目的,同时也要保证系统的稳定运行。
1. **Connector配置**:调整`Connector`的并发参数,如`maxThreads`定义最大线程数,`minSpareThreads`设置最小空闲线程,确保在高并发下有足够的处理能力。`acceptCount`设定等待队列长度,避免请求溢出。 2. **...
7. **安全与性能调整**:为了提高安全性,可以配置Tomcat的server.xml文件,比如设置用户访问权限、限制并发连接数等。同时,根据服务器资源情况调整Tomcat的JVM内存分配,以优化性能。 通过以上步骤,你就可以在...
【Tomcat内存优化】是提升服务器性能的关键步骤,特别是对于那些运行复杂Web应用程序或高流量网站的服务器来说。默认情况下,Tomcat分配的内存相对较小,仅为128MB,这可能不足以应对大规模的用户访问和数据处理。...
### Tomcat内存优化详解 #### 一、引言 在Java Web应用开发中,Apache Tomcat作为一款轻量级的应用服务器被广泛使用。然而,在实际部署和运行过程中,经常会遇到性能瓶颈,其中最常见的问题之一就是内存溢出异常,...
- `Executor`: Tomcat 7及以上版本支持线程池配置,通过`Executor`可以定制线程池大小,提高并发性能。 3. **Context配置** - `Context`: 定义了Web应用的上下文路径,可以在`server.xml`或`context.xml`中配置,...
3. **线程模型**:Tomcat使用多线程模型处理并发请求,提高了服务器的响应速度和吞吐量。 4. **连接器(Connector)**:Tomcat通过不同的连接器支持多种协议,如HTTP、AJP等,使得与其他Web服务器集成成为可能。 5...
- `maxThreads`:定义了Tomcat并发处理请求的最大线程数。根据系统负载,可以将其设置为150左右。 - `minSpareThreads`:设定空闲线程的最小数量,保持一定的预备线程以快速响应新请求。 3. **连接器配置**: - ...
1. **服务器配置**:根据服务器硬件资源调整Tomcat的配置参数,如最大线程数、最小空闲线程数等。 2. **日志监控**:定期检查和分析日志文件,以便发现潜在问题并及时解决。 3. **内存管理**:合理设置JVM内存大小,...