nginx VS tomcat

1.tomcat

tomcat:  web应用服务器
   maxConnections(最大连接数):  springboot自带的tomcat默认是10000,设置成-1表示不限制连接数
   maxThread(最大线程数,也成并发数):  默认200
   acceptCount(最大等待数):  默认100
   minSpareThreads(最小空闲线程数):  默认10


关系说明:
   
   把tomcat容器比作一个餐厅:
       maxConnections就比作餐厅里就餐的餐位,比如说有99个位子
       maxThread就比作餐厅的厨师,每一个厨师,在同一时刻,只能给一张餐桌炒菜,就像极了JVM中的一条线程。
       acceptCount就比作排号队列,排号的数量不是无限制的,火锅店的排号到了一定数据量之后,服务往往会说:已经客满。
   
   整体流程:
       1.如果maxConnections连接数没有满,就不需要取号,因为还有空余的餐桌,直接被大堂服务员领上餐桌,点菜就餐即可.
       2.如果 maxConnections 连接数满了,但是取号人数没有达到 acceptCount,则取号成功。如果取号人数已达到acceptCount,则拿号失败,会得到Tomcat的Connection refused connect 的回复信息。
       3.如果有餐桌空出来了,表示maxConnections连接数没有满,排队的人,可以进入大堂上桌就餐。
       4.就餐需要厨师炒菜。厨师的数量,比顾客的数量,肯定会少一些。一个厨师一定需要给多张餐桌炒菜,如果就餐的人越多,厨师也会忙不过来。这时候就可以增加厨师,一增加到上限maxThreads的值,如果还是不够,只能是拖慢每一张餐桌的上菜速度,这种情况,就是大家常见的“上一道菜吃光了,下一道菜还没有上”尴尬场景。


2.nginx

 nginx:  应用服务器
   nginx作为多进程单线程和多路io复用模型,所以没有最大线程数这一个概念
   nginx有最大连接并发数的概念,官网给出的最大值5w
 nginx:  配置
   worker_processes:  一般设置成cpu核数,auto也可以
   worker_connections:  一个进程能够打开的最大文件数,linux 最大为65535,但是一般为1024,需要查看系统级限制,自行百度查询

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容