tomcat如何同时处理多个并发请求?

时间:2017-08-11 05:34:33

标签: java linux tomcat server

tomcat如何同时处理多个并发请求?

是否排队处理请求或处理并行中的某些请求?

如果它并行处理请求,它如何返回异步响应?在响应到来之前,它是否会保持与客户端的连接?


如果tomcat使用多线程环境?代码是否需要完全线程安全?或者tomcat自己处理它。

1 个答案:

答案 0 :(得分:2)

Tomcat使用线程连接池,每个传入的请求都将从池中分配给一个线程,一旦线程完成作业,它就会返回池中。

您可以根据应用程序配置tomcat连接池。

除了连接池之外,tomcat也在内部使用JDBC连接池,请在此处阅读更多内容https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html

编辑: - 回答你的第二个问题,是的tomcat使用多线程环境。并且每个请求都是tomcat被分配​​给一个新线程,例如每个servlet请求将被包装到一个新的请求对象(线程安全)但在此之后它取决于您的业务逻辑,是否将它传递给某些线程安全代码或不

稍后会添加代码示例,但http://jcip.net/是一个非常好的起点,如果您需要更多代码示例并深入了解它。