精华内容
下载资源
问答
  • Tomcat线程数配置

    2017-06-21 09:23:57
    同台tomcat下两个项目通过hession发布接口调用测压,经apache-jmeter-3.0 配置1000线程测压根据测试后,报 org.springframework.remoting.RemoteConnectFailureException: Cannot connect to Hessian remote service...

    问题背景:

    同台tomcat下两个项目通过hession发布接口调用测压,经apache-jmeter-3.0 配置1000线程测压根据测试后,报 org.springframework.remoting.RemoteConnectFailureException: Cannot connect to Hessian remote service  xxxxx  ConnectException: Connection refused: connect异常


    异常情况:

    百分之五十到六十的请求正常,其他的报异常。


    原因分析:

    可能是线程连接数量限制。

    问题解决办法:

    tomcat配置:

    在tomcat的server.xml文件中打开配置,<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
            maxThreads="1000" minSpareThreads="4"/>,默认已有但是被注释掉了,注意修改maxThreads值;

    在<Connector executor="tomcatThreadPool" connectionTimeout="20000" maxPostSize="0" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>中配置executor="tomcatThreadPool",值为Excutor的name


    修改后,测压不报异常

    展开全文
  • 1) 服务端 如何查看java进程的线程数量 jps 查看java进程 使用pstree -p 进程号 这个命令可以列出改进程下所有的...Tomcat 配置最大连接 # 等待队列的长度 默认 100 # 当调用web服务的http的请求数量 到达tom

    1) 服务端 如何查看java进程的线程数量

    1. jps 查看java进程

    2. 使用pstree -p 进程号 这个命令可以列出改进程下所有的线程出来

    3. 使用命令 pstree -p 进程号 | wc -l 给我计算出一共有多少个线程

    • 查看结果
    [root@iZbp1j6g2ax5izam8a53ojZ src]# pstree -p 4409| wc -l
    33
    

    Tomcat 配置最大连接数

    # 等待队列的长度  默认 100
    # 当调用web服务的http的请求数量 到达tomcat 最大线程数。  还有新的http请求时。这个时候tomcat 就会把请求放到等待队列中。 这个参数
    #  能够接受的最大的等待数。 默认100  如果等待的队列满了。 这个时候请求会被tomcat拒绝
    server.tomcat.accept-count=1000
    #  最大的连接数 默认是 200  每一次HTTP请求到达我们的服务器,web服务器就会创建一个线程来处理请求。 
    #  这个参数决定了应用服务器同时可以处理多个HTTP请求  tomcat 默认  为200
    server.tomcat.max-threads= 400
    # 最小工作空闲线程数  默认10 
    server.tomcat.min-spare-threads= 100
    
    
    #其实增加线程是成本的。
    # 线程占用的资源过大  就会发生 内存溢出 oom
    

    项目启动出现useSSl=false
    在配置文件中加spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?characterEncoding=UTF-8&useSSl=false

    外挂配置文件

    指定配置文件启动

    java -jar miaosha.jar --spring.config.addition-location=/opt/application.properties
    

    1) vim application.properties

    # JDBC配置
    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?characterEncoding=UTF-8
    spring.datasource.username=root
    spring.datasource.password=123456
    spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
    
    server.port=9999
    # 连接池配置
    # 初始化连接数
    spring.datasource.druid.initial-size=1
    # 最小空闲连接数,一般设置和initial-size一致
    spring.datasource.druid.min-idle=1
    # 最大活动连接数
    spring.datasource.druid.max-active=20
    # 从连接池获取连接超时
    spring.datasource.druid.max-wait=60000
    # 打开PSCache,并且指定每个连接上PSCache的大小
    # Oracle等支持游标的数据库,打开此开关,会以数量级提升性能,具体查阅PSCache相关资料
    spring.datasource.druid.pool-prepared-statements=true
    spring.datasource.druid.max-open-prepared-statements=20
    # 检验连接是否有效的查询语句
    # 如果数据库Driver支持ping()方法,则优先使用ping()方法进行检查,否则使用validationQuery查询进行检查
    spring.datasource.druid.validation-query=select 1 from dual
    # 设置从连接池获取连接时是否检查连接有效性,true时,每次都检查;false时,不检查
    spring.datasource.druid.test-on-borrow=false
    # 设置往连接池归还连接时是否检查连接有效性,true时,每次都检查;false时,不检查
    spring.datasource.druid.test-on-return=false
    # 设置从连接池获取连接时是否检查连接有效性
    # 为true时,如果连接空闲时间超过minEvictableIdleTimeMillis进行检查,否则不检查
    # 为false时,不检查
    spring.datasource.druid.test-while-idle=true
    # 配置间隔多久启动一次DestroyThread,对连接池内的连接才进行一次检测,单位是毫秒。
    # 1.如果连接空闲并且超过minIdle以外的连接,如果空闲时间超过minEvictableIdleTimeMillis设置的值则直接物理关闭。
    # 2.在minIdle以内的不处理。
    spring.datasource.druid.time-between-eviction-runs-millis=60000
    # 配置一个连接在池中最大空闲时间,单位是毫秒
    spring.datasource.druid.min-evictable-idle-time-millis=300000
    # 打开后,增强timeBetweenEvictionRunsMillis的周期性连接检查,minIdle内的空闲连接
    # 每次检查强制验证连接有效性
    spring.datasource.druid.keep-alive=true
    
    ################ myabtis 配置###########
    mybatis.type-aliases-package=com.etc.domian
    mybatis.mapper-locations=classpath:mapper/*.xml
    
    # 等待队列的长度  默认 100
    # 当调用web服务的http的请求数量 到达tomcat 最大线程数。  还有新的http请求时。这个时候tomcat 就会把请求放到等待队列中。 这个参数
    #  能够接受的最大的等待数。 默认100  如果等待的队列满了。 这个时候请求会被tomcat拒绝
    server.tomcat.accept-count=1000
    #  最大的连接数 默认是 200  每一次HTTP请求到达我们的服务器,web服务器就会创建一个线程来处理请求。
    #  这个参数决定了应用服务器同时可以处理多个HTTP请求  tomcat 默认  为200
    server.tomcat.threads.max=400
    # 最小工作空闲线程数  默认10
    server.tomcat.threads.min-spare= 100
    #其实增加线程是成本的。
    # 线程占用的资源过大  就会发生 内存溢出 oom
    
    展开全文
  • 转自最近一直在解决线上一个问题,表现是:Tomcat每到凌晨会有一个...服务器性能很好,Tomcat版本是7.0.54,配置如下:maxThreads="3000" minSpareThreads="800"/>connectionTimeout="60000"keepAliveTimeout="3...

    转自

    最近一直在解决线上一个问题,表现是:

    Tomcat每到凌晨会有一个高峰,峰值的并发达到了3000以上,最后的结果是Tomcat线程池满了,日志看很多请求超过了1s。

    服务器性能很好,Tomcat版本是7.0.54,配置如下:

    maxThreads="3000" minSpareThreads="800"/>

    connectionTimeout="60000"

    keepAliveTimeout="30000"

    maxKeepAliveRequests="8000"

    maxHttpHeaderSize="8192"

    URIEncoding="UTF-8"

    enableLookups="false"

    acceptCount="1000"

    disableUploadTimeout="true"

    redirectPort="8443" />

    事后thread dump看其实真正处于RUNNABLE状态的线程很少,绝大部分线程都处于TIMED_WAITING状态:

    于是大伙都开始纠结为什么线程会涨到3000,而且发现即使峰值过了线程数并不会降下来。

    我们首先想到的是:

    后端应用的处理瞬间比较慢,“堵住了”导致前端线程数涨了起来。

    但是优化一个版本上线后发现虽然涨的情况有所好转,但是最终线程池还是会达到3000这个最大值。

    ==================================分割线=========================================

    以上是大背景,中间的过程省略,直接跟各位说下目前我得到的结论:

    1、首先是为什么线程不释放的问题?

    简单说下我验证的Tomcat(7.0.54)线程池大概的工作机制

    Tomcat启动时如果没有请求过来,那么线程数(都是指线程池的)为0;

    一旦有请求,Tomcat会初始化minSapreThreads设置的线程数;

    Tomcat不会主动对线程池进行收缩,除非确定没有任何请求的时候,Tomcat才会将线程池收缩到minSpareThreads设置的大小;

    Tomcat6之前的版本有一个maxSpareThreads参数,但是在7中已经移除了,所以只要前面哪怕只有一个请求,Tomcat也不会释放多于空闲的线程。

    至于Tomcat为什么移除maxSpareThreads这个参数,我想也是出于性能的考虑,不停的收缩线程池性能肯定不高,而多余的线程处于等待状态的好处是一有新请求过来立刻可以处理。

    而且大量的Tomcat线程处于等待状态不会消耗CPU,但是会消耗一些JVM存储。

    补充:上面标红的一句有点问题,进一步验证发现只有使用Keep-Alive(客户端和服务端都支持)时才是这种表现,如果客户端没有使用Keep-Alive那么线程会随着TCP连接的释放而回收。

    Tomcat中Keep-Alive相关的参数:

    maxKeepAliveRequests:

    The maximum number of HTTP requests which can be pipelined until the connection is closed by the server. Setting this attribute to 1 will disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 will allow an unlimited amount of pipelined or keep-alive HTTP requests. If not specified, this attribute is set to 100.

    keepAliveTimeout:

    The number of milliseconds this Connector will wait for another HTTP request before closing the connection. The default value is to use the value that has been set for the connectionTimeout attribute. Use a value of -1 to indicate no (i.e. infinite) timeout.

    2、为什么线程池会满?

    这是我现在纠结的核心。到底是不是应用的性能慢导致的,我现在的结论是有关系,但关键是并发。

    Tomcat的线程池的线程数跟你的瞬间并发有关系,比如maxThreads设置为1000,当瞬间并发达到1000那么Tomcat就会起1000个线程来处理,这时候跟你应用的快慢关系不大。

    那么是不是并发多少Tomcat就会起多少个线程呢?这里还跟Tomcat的这几个参数设置有关系,看官方的解释是最靠谱的:

    maxThreads:

    The maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200. If an executor is associated with this connector, this attribute is ignored as the connector will execute tasks using the executor rather than an internal thread pool.

    maxConnections:

    The maximum number of connections that the server will accept and process at any given time. When this number has been reached, the server will accept, but not process, one further connection. This additional connection be blocked until the number of connections being processed falls below maxConnections at which point the server will start accepting and processing new connections again. Note that once the limit has been reached, the operating system may still accept connections based on the acceptCount setting. The default value varies by connector type. For BIO the default is the value of maxThreads unless an Executor is used in which case the default will be the value of maxThreads from the executor. For NIO the default is 10000. For APR/native, the default is 8192.

    ……

    acceptCount:

    The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. The default value is 100.

    minSpareThreads:

    The minimum number of threads always kept running. If not specified, the default of 10 is used.

    我简单理解就是:

    maxThreads:Tomcat线程池最多能起的线程数;

    maxConnections:Tomcat最多能并发处理的请求(连接);

    acceptCount:Tomcat维护最大的对列数;

    minSpareThreads:Tomcat初始化的线程池大小或者说Tomcat线程池最少会有这么多线程。

    比较容易弄混的是maxThreads和maxConnections这两个参数:

    maxThreads是指Tomcat线程池做多能起的线程数,而maxConnections则是Tomcat一瞬间做多能够处理的并发连接数。比如maxThreads=1000,maxConnections=800,假设某一瞬间的并发时1000,那么最终Tomcat的线程数将会是800,即同时处理800个请求,剩余200进入队列“排队”,如果acceptCount=100,那么有100个请求会被拒掉。

    注意:根据前面所说,只是并发那一瞬间Tomcat会起800个线程处理请求,但是稳定后,某一瞬间可能只有很少的线程处于RUNNABLE状态,大部分线程是TIMED_WAITING,如果你的应用处理时间够快的话。所以真正决定Tomcat最大可能达到的线程数是maxConnections这个参数和并发数,当并发数超过这个参数则请求会排队,这时响应的快慢就看你的程序性能了。

    以上的结论都是我个人验证和总结,如有不对,跪求指正!!!

    ==========================更新(2015-1-20)===========================

    以上的得出结论有严重的问题,特此更正下,如果误导了某些同学十分抱歉。

    主要错误的结论是:

    Tomcat不会主动对线程池进行收缩,除非确定没有任何请求的时候,Tomcat才会将线程池收缩到minSpareThreads设置的大小;

    Tomcat6之前的版本有一个maxSpareThreads参数,但是在7中已经移除了,所以只要前面哪怕只有一个请求,Tomcat也不会释放多于空闲的线程。

    Tomcat会停止长时间闲置的线程。Tomcat还有一个参数叫maxIdleTime:

    (int) The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads. Default value is 60000(1 minute)

    其实从这个参数解释也能看出来Tomcat会停止闲置了超过一定时间的线程的,这个时间就是maxIdleTime。但我之前的测试中确实没有发现线程释放的现象,这是为什么呢?我发现除了这个参数线程池线程是否释放?释放多少?还跟当前Tomcat每秒处理的请求数(从Jmeter或LoadRunner来看可以理解为TPS)有关系。通过下表可以清晰的看出来线程数,TPS和maxIdleTime之间的关系:

    TPS

    maxIdleTime(ms)

    Thread Count

    10

    60,000

    600

    5

    60,000

    300

    1

    60,000

    60

    依次类推,当然Thread Count这一列是一个大约数,上下相差几个,但基本符合这样一个规则:

    Thread Count = min(max((TPS * maxIdleTime)/1000,minSpareThreads),maxThreads)

    当然这个Thread Count不会小于minSpareThreads,这个跟之前的结论还是一样的。我现在大胆猜测下(回头看源码验证下,或者哪位同学知道告诉我下,谢谢):

    Tomcat线程池每次从队列头部取线程去处理请求,请求完结束后再放到队列尾部,也就是说前后两次请求处理不会用同一个线程。某个线程闲置超过maxIdleTime就释放掉。

    假设首先线程池在高峰时期暴涨到1000,高峰过后Tomcat处理一次请求需要1s(从Jmeter看TPS大约就为1),那么在maxIdleTime默认的60s内会用到线程池中60个线程,那么最后理论上线程池会收缩到60(假设minSpareThreads大于60)。另外:这个跟用不用Keep-Alive没关系(之前测试结论是因为用了Keep-Alive导致程序性能下降,TPS降低了很多导致的)

    这就是为什么我之前的测试中、还有我们生产环境中线程数只增不减的原因,因为就算峰值过后我们的业务每秒请求次数仍然有100多,100*60=6000,也就是3000个线程每个线程在被回收之前肯定会被重用。

    那么现在有另外一个问题,那么正常情况下为什么每秒100次的请求不会导致线程数暴增呢?也就是说线程暴增到3000的瓶颈到底在哪?这个我上面的结论其实也不是很准确。

    真正决定Tomcat最大可能达到的线程数是maxConnections这个参数和并发数,当并发数超过这个参数则请求会排队,这时响应的快慢就看你的程序性能了。

    这里没说清楚的是并发的概念,不管什么并发肯定是有一个时间单位的(一般是1s),准确的来讲应该是当时Tomcat处理一个请求的时间内并发数,比如当时Tomcat处理某一个请求花费了1s,那么如果这1s过来的请求数达到了3000,那么Tomcat的线程数就会为3000,maxConnections只是Tomcat做的一个限制。

    欢迎斧正!

    补充:

    使用Jmeter可以很容易的控制请求的频率。

    展开全文
  • TOMCAT 线程数

    2012-03-16 16:15:03
    我的网站使用的是apache+tomcat的传统配置方式,每当晚上10点左右的时候,apache的并发连接有300左右,而每个网页包含的最少文件为4个,这样算下来的话,tomcat的工作线程最多有80-100,但是观察其当前busy的...
    
    
    该文转自:
    我的网站使用的是apache+tomcat的传统配置方式,每当晚上10点左右的时候,apache的并发连接数有300左右,而每个网页包含的最少文件数为4个,这样算下来的话,tomcat的工作线程最多有80-100,但是观察其当前busy的线程竟然维持在800左右,不知道是什么原因。 

    其中kill -3 pid 后,有好多如下的线程: 
    "TP-Processor2349" daemon prio=10 tid=0x09ea2c00 nid=0x103c runnable [0x6003f000..0x6003ff30] 
    java.lang.Thread.State: RUNNABLE 
    at java.net.SocketInputStream.socketRead0(Native Method) 
    at java.net.SocketInputStream.read(SocketInputStream.java:129) 
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) 
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:258) 
    at java.io.BufferedInputStream.read(BufferedInputStream.java:317) 
    - locked <0x929eb9d0> (a java.io.BufferedInputStream) 
    at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:620) 
    at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:558) 
    at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:685) 
    at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) 
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) 
    at java.lang.Thread.run(Thread.java:619) 

    请大家帮我看看是什么原因?

    采纳的答案关与tomcat 方面,你可以采用优化措施: 
    当线程过多机器资源消耗过大,不仅影响性能,严重还会宕机。例如线程达到150左右时服务端会抛出socket资源用尽的错误,你很难再往上加,响应的速度也变的异常的缓慢,你可以在Tomcat的服务器配置文件中优化一下配置,比如在server.xml中修改,增加节点数目,可以有效的提高性能: 
      <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150
       minSpareThreads="30" maxSpareThreads="75" enableLookups="false" 
       redirectPort="8443" acceptCount="100" c 
       disableUploadTimeout="true" /> 
    适当修改粗、斜字体部分的值,几个参数意义分别为: 
    maxThreads:Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。 
    acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。 
    connnectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。 
    minSpareThreads:Tomcat初始化时创建的线程数。 
    maxSpareThreads:一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程 
      对于Connector 8443也有相应的设置,如果同时会用到http与https,应合理分配这两个数据.如果只用到其中的一个,可以将另外一个尽量设置小一点. 

      此外,还可以给Java虚拟机设置使用的内存来提高性能,Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。 
      Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh中的set CURRENT_DIR=%cd%前面,增加如下设置: 
      JAVA_OPTS=-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】 
      需要把这个两个参数值调大。例如: 
      JAVA_OPTS=-Xms256m -Xmx512m 

      这样,当tomcat线程数增大,但没有超过最大线程数时,平均响应时间会增大,但这不意味着tomcat在线程增多时响应速度变慢.在测试中发现,由于线程数增多,在请求时需要排队,导致一部分请求会一直排队,随着线程数的增多,排队等待的最大时间也会越来越大,而这些大数据才是导致平均响应时间变大的罪魁祸首.响应时间大于3s的请求占总请求的比例一直维持在3%-5%. 

    系统代码中的System.out语句会严重影响代码执行的效率,有必要在测试完成之后清除这些垃圾log,或者建议换用log4j等可配置的日志组件。


    展开全文
  • 本文前半部分结论存在严重错误,请看最后2015-1-20更新部分。...服务器性能很好,Tomcat版本是7.0.54,配置如下:事后thread dump看其实真正处于RUNNABLE状态的线程很少,绝大部分线程都处于TIMED_WAITIN...
  • 服务器性能很好,Tomcat版本是7.0.54,配置如下: <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="3000" minSpareThreads="800"/> <Connector execut...
  • tomcat内存和线程数配置

    千次阅读 2014-06-25 14:46:57
    一、Tomcat的JVM提示内存溢出 查看%TOMCAT_HOME%\logs文件夹下,日志文件是否有内存溢出错误 二、修改Tomcat的JVM 1、错误提示:java.lang.OutOfMemoryError: Java heap space Tomcat默认可以使用的内存...
  • 1:配置executor属性打开/conf/server.xml文件,在Connector之前配置一个线程池: 重要参数说明:name:共享线程池的名字。...这一属性为线程池中每个线程的name字符串设置了一个前缀,Tomcat将把线程号追加到...
  • Tomcat配置线程数大小

    千次阅读 2018-12-22 17:46:32
    vi /tomcat/conf/server.xml 增加 maxThreads="150" minSpareThreads="25" maxSpareThreads="100" acceptCount="150"...maxProcessors:最大连接线程数...
  • 并发和Tomcat线程数

    2019-09-25 22:26:08
    转自 ... 最近一直在解决线上一个问题,表现是: Tomcat每到凌晨会有一个高峰,峰值的并发达到了3000以上,...服务器性能很好,Tomcat版本是7.0.54,配置如下: <Executor name="tomcatThreadPool" n...
  • 首先看看springboot内置的tomcat,该如何配置这两个参数# 在配置文件中添加如下内容# tomcat最大线程数,默认为200server.tomcat.max-threads=200# tomcat最大连接数,默认为10000(网上的说法)server.tomcat.max-...
  • 这段时间折腾了哈java web应用的压力测试,部署容器是tomcat 7。期间学到了蛮多散碎的知识点,及时梳理总结,构建良好...对tomcat来说,每一个进来的请求(request)都需要一个线程,直到该请求结束。如果同时进来的请...
  • tomcat 线程数相关问题

    2015-12-14 10:27:16
    基于tomcat为容器做web service,...此前在TMD项目中没有在代码里配置线程池的大小,而是使用tomcat自身线程管控。 地址:conf/server.xml    connectionTimeout="20000"  maxThreads="3000"  minSpareThre
  • 作者:编程迷思www.cnblogs.com/kismetv/p/7806063.html前言在使用tomcat时,经常会遇到连接数、线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector)。在前面的文章 详解Tomcat配置文件...
  • 最近一直在解决线上一个问题,表现是: ...服务器性能很好,Tomcat版本是7.0.54,配置如下: &lt;Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxTh...
  • 假设Tomcat每到固定一个时间会有一个高峰,峰值的并发达到了...服务器性能很好,Tomcat版本是7.0.54,配置如下 <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="3000" minSp...
  • 在使用tomcat时,经常会遇到连接数、线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector)。 在前面的文章 详解Tomcat配置文件server.xml 中写到过:Connector的主要功能,是接收连接...
  • 匿名用户1级2017-07-18 回答展开全部tomcat最大线程数的设置Tomcat的server.xml中连接器设置如下maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" ...
  • Zabbix在线监控tomcat线程数,因为线上没有配置jmx,所以使用jstack pid的方式获取thread线程。脚本结合zabbix的自动发现,可以实现多个tomcat实例的自动发现配置。免去以后tomcat增加后一个个手动添加的烦恼。 ...
  • Zabbix在线监控tomcat线程数,因为线上没有配置jmx,所以使用jstack pid的方式获取thread线程。脚本结合zabbix的自动发现,可以实现多个tomcat实例的自动发现配置。免去以后tomcat增加后一个个手动添加的烦恼。...
  • 我们服务器的配置情况如下P4 3.6内存 1G硬盘 SCSI 140 G 分区情况 /boot(500M) /SWAP (2048M) /(剩余全部磁盘空间)服务器是新的HP全新配置服务器的WEB配置情况:红旗LINUX5.0服务亚洲版+TOMCAT5.5.17+MYSQL5.0.22+...
  • 这段时间折腾了哈java web应用的压力测试,部署容器是tomcat 7。期间学到了蛮多散碎的知识点,及时梳理总结,构建良好且易理解的知识架构把它们组织起来,以备忘。 对web应用开发者来说,我们很关心应用可同时处理...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 972
精华内容 388
关键字:

tomcat线程数配置