java的服务是每收到一个请求就新开一个线程来处理吗?tomcat

 我来答
乐美生活每一天
2017-09-26 · 你怎么对待生活,生活就会怎么对待你
乐美生活每一天
采纳数:322 获赞数:447

向TA提问 私信TA
展开全部

java的多线程处理是根据实际的业务情况提供固定数量的线程池的,如果任何请求都新开一个线程的话,那么再大,再好的服务器也无法承受,正确的做法是:

  1. 建立线程池机制,预先分配好固定大小的线程数量

  2. 系统受到请求后从线程池中取出空闲线程

  3. 当无空闲线程时,请求为等待状态,直到有空闲线程进行处理

知识的运输者
2017-09-26
知道答主
回答量:3
采纳率:0%
帮助的人:2795
展开全部
对tomcat来说,每一个进来的请求(request)都需要一个线程,直到该请求结束。如果同时进来的请求多于当前可用的请求处理线程数,额外的线程就会被创建,直到到达配置的最大线程数(maxThreads属性值)。如果仍就同时接收到更多请求,这些来不及处理的请求就会在Connector创建的ServerSocket中堆积起来,直到到达最大的配置值(acceptCount属性值)。至此,任何再来的请求将会收到connection refused错误,直到有可用的资源来处理它们
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式