版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
- tomcat支持多大的并发?怎么定?
- 是由server.xml中的connector标签的maxThreads属性决定的,默认是200
- 实际中可以根据服务器类型调整,本质是在线程数与线程切换之间找到性能平衡点
- 多用于计算 则线程数小一点,这样线程切换少
- 多用于io 数据库操作, 线程数大一点,这样可以处理的并发量会多一点
- 具体可以由少到多的增加,不断调试,找到适合自己系统和tomcat服务器可以接受的平衡点.
- tomcat 请求来时 线程创建策略
- 首先看是否配置线程池
- 如果没有 则默认有个线程栈
- 如果线程栈中还有线程,直接pop一个
- 如果没有则判断是否超过最大线程数,没有则创建线程
- 如果超过则判断最大线程数是否大于0,如果小于,则创建(相当于没有最大线程限制)
-
synchronized (workers) { if (workers.size() > 0) { curThreadsBusy++; return workers.pop(); } if ((maxThreads > 0) && (curThreads < maxThreads)) { curThreadsBusy++; return (newWorkerThread()); } else { if (maxThreads < 0) { curThreadsBusy++; return (newWorkerThread()); } else { return (null); } } }
- https://blog.csdn.net/yfkscu/article/list/2?