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

sou*_*024 4 java linux tomcat server

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

它是否将请求排队并行处理某些请求?

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


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

Ami*_*wal 6

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

可以根据自己的应用配置tomcat连接池。

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

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

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