`

tomcat运行期优化及问题解决方案 Tomcat 线程池

    博客分类:
  • java
阅读更多

1、环境说明

Linux下tomcat运行期

 

2、增加jvm 内存的配置

#vi catalina.sh

插入如下:

JAVA_OPTS='-Xms256m -Xmx512m'

 

3、INFO: Maximum number of threads (200) created for connector with address null and port 8091

说明:最大线程数错误

解决方案:

 

使用线程池,用较少的线程处理较多的访问,可以提高tomcat处理请求的能力。使用方式:

首先。打开/conf/server.xml,增加

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"    
        maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />  
 最大线程500(一般服务器足以),最小空闲线程数20,线程最大空闲时间60秒。

然后,修改<Connector ...>节点,增加executor属性,如:

<Connector executor="tomcatThreadPool"    
               port="80" protocol="HTTP/1.1"    
               connectionTimeout="60000"  
               keepAliveTimeout="15000"  
               maxKeepAliveRequests="1"  
               redirectPort="443"  
               ....../>  

 

4、java.net.SocketException: Too many open files

当tomcat并发用户量大的时候,单个jvm进程确实可能打开过多的文件句柄。

使用 #lsof -p 10001|wc -l   查看文件操作数

如下操作:

(1).ps -ef |grep tomcat  查看tomcat的进程ID,记录ID号,假设进程ID为10001   
(2).lsof -p 10001|wc -l    查看当前进程id为10001的 文件操作数   
(3).使用命令:ulimit -a   查看每个用户允许打开的最大文件数   
  默认是1024.   
(4).然后执行:ulimit -n 65536 将允许的最大文件数调整为65536  
 
分享到:
评论
2 楼 Sev7en_jun 2013-10-30  
谢谢,转走
1 楼 zfms 2013-03-25  
不错,谢谢

相关推荐

    TOMCAT的线程池源码

    例如,Tomcat线程池提供了详细的MBean接口,允许管理员在运行时监控和调整线程池的状态,这对于故障排查和性能调优非常有帮助。 总结来说,Tomcat的线程池源码设计精巧,兼顾了性能与可管理性。通过深入学习和理解...

    基于tomcat的连接数与线程池详解

    在Tomcat的配置和性能优化中,了解如何设置连接数和线程池是至关重要的。 首先,Connector按照处理连接的方式可以分为不同的协议类型,包括BIO(阻塞IO)、NIO(非阻塞IO)、APR(Apache Portable Runtime)。BIO...

    Tomcat线程池实现简介

    【描述】:Tomcat作为最流行的Java Web容器,其高效处理请求的能力离不开线程池的优化。本文将详细解析Tomcat线程池的实现原理,帮助读者深入理解其工作方式。 【标签】:Tomcat 线程池 多线程 【正文】: Tomcat的...

    Tomcat6.0共享线程池配置

    ### Tomcat 6.0 共享线程池配置详解 #### 一、引言 在探讨Tomcat 6.0共享线程池配置之前,我们先了解下什么是线程池以及为什么要在Tomcat服务器中配置共享线程池。线程池是一种用于管理多个线程并重用它们的技术,...

    Tomcat性能优化

    【标签】:“Tomcat优化”进一步确认了我们要关注的是Tomcat的整体优化策略,这包括但不限于启动速度、并发能力、内存使用效率等方面。 【文件】:“Tomcat7性能优化调优.docx”可能包含了关于Tomcat7性能优化的...

    Tomcat7性能优化

    #### 三、Tomcat优化配置详解 ##### 3.1 配置Tomcat管理员账户 为了更好地管理和监控Tomcat服务器,首先需要设置管理员账户。在`conf/tomcat-users.xml`文件中添加用户角色,如下所示: ```xml ...

    apache-tomcat-8.5配置优化后

    Apache Tomcat 8.5是Java Servlet容器,用于运行Java Web应用程序。它的配置优化对于提升应用性能、确保稳定性和安全至关重要。在这个配置优化后版本中,我们已经设置好了管理员的用户名和密码,允许用户直接使用...

    tomcat优化

    为了帮助开发者解决这个问题,本文将介绍 Tomcat 优化方案的七个方面,分别是增加 JVM 堆内存大小、修复 JRE 内存泄漏、线程池设置、压缩、数据库性能调优、Tomcat 本地库和其它选项。 增加 JVM 堆内存大小 Tomcat...

    Tomcat7性能优化.docx

    【Tomcat7性能优化】 Tomcat7性能优化的目的是提高网站的并发能力,确保服务器能够高效地处理更多用户的请求,从而提升用户体验。优化主要涉及服务器资源的管理和Tomcat的配置调整。 1. 服务器资源 服务器的硬件...

    Tomcat7 性能优化

    ### Tomcat7 性能优化详解 #### 一、引言 随着互联网应用的日益增长,网站并发访问的需求越来越高,而作为一款广泛使用的开源Web容器,Apache Tomcat 的性能优化显得尤为重要。本文将针对Tomcat7进行一系列的性能...

    Tomcat深入剖析pdf+源码(Tomcat运行原理)

    通过阅读和分析源码,可以加深对Tomcat运行原理的理解,这对于解决实际问题和进行性能调优非常有帮助。 总之,《Tomcat深入剖析》结合源码分析,是一本全面且深入的Tomcat学习资源,无论是初学者还是经验丰富的...

    Tomcat的配置及出现问题的解决方法

    Tomcat配置及解决方法 Tomcat是Apache软件基金会下的开源JavaServlet容器,作为Web应用服务器,广泛应用于Web开发和部署中。然而,在实际应用中,Tomcat的配置和问题解决方法却是一些开发者所忽视的重要环节。本文...

    tomcat在x64运行问题解决包

    标题中的“tomcat在x64运行问题解决包”表明这个压缩包是为了解决Tomcat在64位操作系统上运行时可能遇到的问题而准备的。Tomcat是一款广泛应用的开源Java Servlet容器,它用于部署和运行Java Web应用程序。在64位...

    myeclipse2015运行tomcat时遇到的问题及解决方法

    myeclipse2015运行tomcat时遇到的问题及解决方法

    tomcat性能优化.pdf

    在进行Tomcat优化时,需要从多个维度入手,包括但不限于配置优化、部署与测试、参数调整、源码理解以及JVM参数调整等。 配置优化是Tomcat性能优化的第一步,也是最基础的一步。首先,应该选择合适的Tomcat版本进行...

    检测Tomcat运行状态-自动重启

    - **性能优化**:对于频繁的状态检测操作,可以考虑引入线程池来管理检测任务,减少资源消耗。 - **安全性考虑**:在实现自动重启功能时,需要注意避免恶意重启等问题,确保系统的安全稳定运行。 通过以上知识点的...

    Tomcat优化相关问题.pdf

    Tomcat 优化相关问题 Tomcat 优化是指对 Apache Tomcat 服务器进行性能调整和优化,以提高其处理请求的速度和效率。下面是 Tomcat 优化相关问题的详细知识点: 一、JVM 参数调优 在 Tomcat 中,JVM 参数调优是...

    tomcat7 优化 性能调优

    本文将围绕“Tomcat7优化与性能调优”的主题,深入探讨优化策略,包括但不限于配置调整、启动模式选择、线程池设置、JVM参数调整等方面。 #### 二、服务器资源考量 服务器所能提供的CPU、内存、硬盘等硬件资源对...

Global site tag (gtag.js) - Google Analytics