精华内容
下载资源
问答
  • tomcat并发

    2016-11-27 20:56:00
    Tomcat的最大并发数是可以配置的,实际运用中,最大并发数与硬件性能和CPU数量都有很大关系的。更好的硬件,更多的处理器都会使Tomcat支持更多的并发。  Tomcat默认的HTTP实现是采用阻塞式的Socket通信,每个请求都...

     Tomcat的最大并发数是可以配置的,实际运用中,最大并发数与硬件性能和CPU数量都有很大关系的。更好的硬件,更多的处理器都会使Tomcat支持更多的并发。

      Tomcat默认的HTTP实现是采用阻塞式的Socket通信,每个请求都需要创建一个线程处理,当一个进程有500个线程在跑的话,那性能已经是很低很低了。Tomcat 默认配置的最大请求数是150,也就是说同时支持150个并发。具体能承载多少并发,需要看硬件的配置,CPU 越多性能越高,分配给JVM的内存越多性能也就越高,但也会加重GC的负担。当某个应用拥有 250 个以上并发的时候,应考虑应用服务器的集群。

    操作系统对于进程中的线程数有一定的限制:

      1. Windows 每个进程中的线程数不允许超过 2000

      2. Linux 每个进程中的线程数不允许超过 1000

      3. 在Java中每开启一个线程需要耗用1MB的JVM内存空间用于作为线程栈之用,此处也应考虑。   

    展开全文
  • tomcat并发量详解

    2021-01-07 14:01:31
    tomcat并发量详解 tomcat并发连接数详解
  • Tomcat并发

    2013-02-18 16:35:22
    结合起来用Apache 负责静态页面,Tomcat负责动态页面,同时减少connectionTimeout的时间,以应对并发量大线程回收来不及的情况。  2、压力过大的问题,可以做负载均衡,一个TOMCAT无论如何也不可能担当如此

    http://blog.sina.com.cn/s/blog_4b5bc01101014s7t.html


    1、Apache + Tomcat 结合起来用Apache 负责静态页面,Tomcat负责动态页面,同时减少connectionTimeout的时间,以应对并发量大线程回收来不及的情况。 

    2、压力过大的问题,可以做负载均衡,一个TOMCAT无论如何也不可能担当如此多的线程负载,而且JVM过大,其内存管理成本将显著加大。2G的内存,做3-4个TOMCAT实例(512RAM*4),更为科学合理。 

    3、数据库连接池,不少人,都推荐使用C3P0,能提高访问数据库的并发性能好几倍。


    4、采用Tomcat集群可以最大程度的发挥服务器的性能,可以在配置 较高的服务器上部署多个Tomcat,也可以在多台服务器上分别部署Tomcat,Apache和Tomcat整合的方式还是JK方式。经过验证,系统对 大用户量使用的响应方面,Apache+3Tomccat集群> Apache+2Tomcat集群 > Apache集成Tomcat > 单个Tomcat。并且采用Apache+多Tomcat集群的部署方式时,如果一个Tomcat出现宕机,系统可以继续使用,所以在硬件系统性能足够优 越的情况下,需要尽量发挥软件的性能,可以采用增加Tomcat集群的方式。

     

    、1. 设置MPM(Multi Processing Modules多道处理模块)。ThreadPerChild,这个参数用于设置每个进程的线程数,在Windows环境下默认值是64,最大值是 1920,建议设置为100-500之间,服务器性能高的话值大一些,反之小一些。MaxRequestPerChild表示每个子进程能够处理的最大请 求数。这个参数的值更大程度上取决于服务器的内存,如果内存比较大的话可以设置为很大的参数,否则设置一个较小的值,建议值是3000. 
    2. 关闭DNS和名字解析  enableLookups  HostnameLookups off


    3. 打开UseCanonicalName模块  UseCanonicalName on 
    4. 关闭多余模块  一般来说,不需要加载的模块有,mod_include.so、 

         mod_autoindex.so、mod_access.so、mod_auth.so. 
    5. 打开KeepAlive支持  
    KeepAlive on, KeepAliveTimeout 15 MaxKeepAliveRequests 1000 
         根据实际经验,通过Apache和Tomcat集群的方式提高系统性能的效果十分明显,这种方式可以最大化的利用硬件资源,通过多个Tomcat的处理来分担单Tomcat时的压力。 

    web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。

    1 windows xp + tomcat    

    1. 2 windows 2003 + tomcat    
    2. 3 windows 2003 + 单apache + 单tomcat    
    3. 4 windows 2003 + apache + tomcat负载均衡    
    4. 5 windows 2003 + apache + tomcat负载均衡 + 多机dns轮询    
    5. 6 ubuntu + apache + tomcat负载均衡    
    6. 7 ubuntu + nginx + tomcat均衡    

       一些并发数据对比,  服务器配置8G内存,2.0GHz 8核CPU:    

    1. windows 2003下,apache配置到3000线程,是以前配置的极限了。    
    2. 改成linux后,压力测试下apache到5000并发。    
    3. 再把apache换成nginx后,轻松突破1.5万并发。    
    4. 当然,linux下还有一个很重要的问题,必须修改内核参数才能提高系统并发。    
    5. 目前系统下单机每日千万级别的访问量是非常轻松的(当然还跟应用本身有关)

    展开全文
  • 主要介绍了Tomcat并发优化方法介绍,小编觉得挺不错的,这里给大家分享下,供需要的朋友参考。
  • tomcat并发调优

    2018-08-29 14:21:32
    1.场景还原  近期笔者在线上项目中遇到了...②对tomcat并发调优,此前笔者nginx+tomcat负载均衡调优已经实现,今天就tomcat并发调优作个分享 2.实现方案 ①编辑tomcat/conf/server.xml 将默认配置 <...

    1.场景还原

        近期笔者在线上项目中遇到了tomcat假死的现象,服务器相关配置均属正常,但是app访问速度很慢;于是笔者想出两种解决方案:①nginx+tomcat实现负载均衡;②对tomcat并发调优,此前笔者nginx+tomcat负载均衡调优已经实现,今天就tomcat并发调优作个分享

    2.实现方案

    ①编辑tomcat/conf/server.xml

    将默认配置

    <Connector port="8085" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" />

    改为如下优化后的配置

    <Connector port="8085" protocol="HTTP/1.1"
    connectionTimeout="5000"
    redirectPort="18443"
    maxThreads="2000"
    minSpareThreads="100"
    maxSpareThreads="1000"
    minProcessors="100"
    maxProcessors="1000"
    enableLookups="false"
    compression="on"
    compressionMinSize="2048"                                                                                                                                                                                                                                                     compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"                                                                                                                                                                                                 URIEncoding="utf-8"
    acceptCount="1000"                                                                                                                                                                                                                                                            disableUploadTimeout="true"/>
    disableUploadTimeout="true"/>

    ②参数解释

    (1)URIEncoding=”UTF-8”
    使得tomcat可以解析含有中文名的文件的url
    
    (2)minSpareThreads
    最小备用线程数,tomcat启动时的初始化的线程数,默认10.
    
    (3)maxSpareThreads
    最大备用线程数,tomcat启动时的初始化的线程数
    
    (4)enableLookups
    如果希望调用request.getRemoteHost()进行DNS查询,以返回远程客户的实际主机名,将enableLookups设为true。如果希望忽略DNS查询,仅仅返回IP地址,设为false(这样提高了性能), 缺省情况下,DNS查询是使能的。一句话:是否反查域名,取值为: true 或 false 。为了提高处理能力,应设置为 false
    (5)disableUploadTimeout    disableUploadTimeout="true"
    类似于Apache中的keeyalive一样,是否需要tomcat容器单独设置上传时间限制,这里是不用,还是使用标准的,不去给上传的附件单独做超时设置。
    
    (6)connectionTimeout
    connectionTimeout:网络连接超时,单位毫秒。设置为 -1 表示永不超时。
    
    (7)acceptCount
    acceptCount是当线程数达到maxThreads后,后续请求会被放入一个等待队列,这个acceptCount是这个队列的大小,如果这个队列也满了,就直接refuse connection.
    一句话:acceptCount:当处理任务的线程数达到最大时,接受排队的请求个数,默认100。
    
    (8)maxThreads
    maxThreads:最大线程数,即同时处理的任务个数,默认值为200 , Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数,即最大并发数。保守推荐:600---900。
    
    (9)maxProcessors
    与下面minProcessors相对应,具体解释看下面。
    
    (10)minProcessors
    在 Java中线程是程序运行时的路径,是在一个程序中与其它控制线程无关的、能够独立运行的代码段。它们共享相同的地址空间。多线程帮助程序员写出CPU最大利用率的高效程序,使空闲时间保持最低,从而接受更多的请求。通常Windows是1000个左右,Linux是2000个左右。
    
    (11)useURIValidationHack
    减少它对一些url的不必要的检查从而减省开销,为提供性能可以设置为false
    
    (12)compression
    compression :设置是否开启GZip压缩
    HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程HTML,CSS,Javascript , Text ,它可以节省40%左右的流量。更为重要的是,它可以对动态生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,压缩效率惊人。
    
    (13)compressionMinSize
    compressionMinSize="2048" 启用压缩的输出内容大小,这里面默认为2KB
    
    (14)compressableMimeType
    compressableMimeType:哪些类型需要压缩,默认是text/html,text/xml,text/plain

    好了,我是张星,欢迎加入博主技术交流群,群号:526601468

    展开全文
  • 查看tomcat 并发

    2020-09-19 14:20:48
    查看tomcat并发连接数有两个方式: 方式1:通过tomcat自带的管理控制台查看: 启动tomcat后,在浏览器输入:http://localhost:8888/manager/status 8888是自己的端口号 用的是 tomcat 8.5.56 tomcat7以后需要...

    查看tomcat并发连接数有两个方式:

    方式1:通过tomcat自带的管理控制台查看:

    启动tomcat后,在浏览器输入:http://localhost:8888/manager/status   8888是自己的端口号

    用的是 tomcat 8.5.56

    tomcat7以后需要账号登录,配置账号需要进入tomcat目录下的conf路径下tomcat-user.xml文件进行修改:

    打开tomcat-users.xml加上如下代码到 </tomcat-users> 节点内就ok了

     <role rolename="manager-gui"/>
      <role rolename="manager-script"/>
      <role rolename="manager-jmx"/>
      <role rolename="manager-status"/>
      <user username="root" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

     

    配置完之后访问 就Ok了

    linux 系统 配置如上  tomcat 访问 直接报403

    默认情况下,只能通过与Tomcat在同一台计算机上运行的浏览器访问Manager。根据提示信息,需要修改manager的status.xml文件,该文件在 tomcat/webapps/manager/META-INF目录下

    修改地址访问限制  tomcat/webapps/manager/META-INF/context.xml

    <Context antiResourceLocking="false" privileged="true" >
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="^.*$" />
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>

    然后在访问

    访问Host Manager

    还是出现了403不允许连接,默认也只是运行本地连接,这时根据提示信息,需要修改Host Manager的context.xml文件。该文件在tomcat/webapps/host-manager/META-INF目录下。
    3、修改地址访问限制:tomcat/webapps/host-manager/META-INF/context.xml
    更改之前的设置,只容许本机访问:

    <Context antiResourceLocking="false" privileged="true" >
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="^.*$" />
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>

    总结:tomcat默认是关闭管理界面的访问权限的,若需要访问需要在在tomcat安装目录下的conf/tomcat-users.xml配置文件中增加用户和用户角色。同时tomcat默认只能在本机访问管理界面,若要远程访问,需要修改tomcat/webapps/host-manager/META-INF/context.xml文件(该文件和虚拟主机管理有关)和tomcat/webapps/manager/META-INF/context.xml配置文件(该文件和服务器管理和项目部署相关)。

    展开全文
  • 4 Tomcat并发优化

    2019-05-05 22:58:03
    Tomcat并发优化 (1) tomcat并发参数 maxThreads:最大的并发请求数,当cpu利用率高的时候,不宜增加线程的个数,当cpu利用率不高,大部分是io阻塞类的操作时,可以适当增加该值。 maxSpareThreads:Tomcat连接器的...
  • nginx mysql tomcat 并发

    2020-05-23 11:23:13
    Tomcat 并发数1200 nginx反向代理并发数 2w 官网是5w mysql并发数 200w
  • tomcat并发资料

    2011-02-16 00:04:30
    tomcat并发资料
  • 查看tomcat 并发连接数

    千次阅读 2019-02-15 13:39:13
    查看tomcat并发连接数有两个方式: 方式1:通过tomcat自带的管理控制台查看: 启动tomcat后,在浏览器输入:http://127.0.0.1:8080/manager/status tomcat7以后需要账号登录,配置账号需要进入tomcat目录下的conf...
  • 提高tomcat并发

    2018-11-26 17:22:32
    提高tomcat并发量 1.打开 server.xml 中 的代码 &lt;Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="250" minSpareThreads="100"/&gt...
  • Tomcat 并发设置与优化

    2019-06-29 09:52:25
    Tomcat 并发设置与优化 在Tomcat配置文件conf下面 server.xml 中的配置中和连接数相关的参数有: minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10 maxProcessors:最大连接线程数,即:并发...
  • Tomcat并发优化和缓存优化 Tomcat并发优化 1.调整连接器connector的并发处理能力 在Tomcat 配置文件 server.xml 中的 配置中 1.参数说明 maxThreads 客户请求最大线程数 minSpareThreads Tomcat初始化...
  • SpringBoot内嵌Tomcat并发容量问题

    千次阅读 2020-09-03 14:24:00
    在做一个关于秒杀系统的模块,进行Jmeter压测性能的时候发现tomcat并发上不去,深入原因找到可供优化的地方,力求最大性能。 发现并发容器问题 对单接口进行5000线程压测,每个线程请求10次,线程在10秒内创建完毕...
  • 未来属于那些相信梦想,并愿意为之付诸行动的人在做一个关于秒杀系统的模块,进行Jmeter压测性能的时候发现tomcat并发上不去,深入原因找到可供优化的地方,力求最大性能。发现并发容器问题对单接口进行6000线程压测...
  • Tomcat并发优化、内存配置、垃圾回收、宕机预防

    万次阅读 多人点赞 2018-03-26 21:48:05
    Tomcat并发优化、内存配置、垃圾回收、宕机预防 目录 Tomcat并发优化、内存配置、垃圾回收、宕机预防 目录 序言 一、Tomcat并发优化 (1) tomcat并发参数 (2) tomcat并发配置 二、Tomcat内存配置 (1) tomcat...
  • Tomcat并发

    2020-09-28 11:31:52
    Tomcat 默认配置的最大请求数是 150,也就是说同时支持 150 个并发,当然了,也可以将其改大。 Tomcat支持三种接收请求的处理方式:BIO、NIO、APR 。 apr模式:简单理解,就是从操作系统级别解决异步IO问题,大幅度...
  • Tomcat并发优化、内存配置、垃圾回收、宕机预防 目录   Tomcat并发优化、内存配置、垃圾回收、宕机预防 目录 序言 一、Tomcat并发优化 (1) tomcat并发参数 (2) tomcat并发配置 二、Tomcat...
  • 一、tomcat并发以及压力测试  待补 二、java内存机制  待补 转载于:https://www.cnblogs.com/kerryqite/p/3896351.html
  • 【性能优化】查看tomcat 并发连接数

    万次阅读 2018-06-27 11:30:04
    查看tomcat并发连接数有两个方式:方式1:通过tomcat自带的管理控制台查看:启动tomcat后,在浏览器输入:http://11.8.130.129:8080/manager/statustomcat7以后需要账号登录,配置账号需要进入tomcat目录下的conf...
  • tomcat并发处理性能

    2014-01-28 17:27:15
    tomcat并发处理性能   1. 加大tomcat连接数  在tomcat配置文 件server.xml中的&lt;Connector ... /&gt;配置中,和连接数相关的参数有: minProcessors:最小空闲连接 线程数,用于提高系...
  • tomcat并发量和内存的关系 http://hi.baidu.com/danghj/item/50537bdcee3ac052d63aaeb5 robbin(iteye的帮主) 的博客 http://robbinfan.com/ Tomcat并发性能调优问题 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,017
精华内容 3,206
关键字:

tomcat并发