gpt4 book ai didi

jakarta-ee - Tomcat如何处理多个请求

转载 作者:行者123 更新时间:2023-11-28 21:47:37 25 4
gpt4 key购买 nike

我知道创建 Web 应用程序,但我有一个基本的疑问。

很抱歉问了一个非常愚蠢的问题,但我想澄清一下我的疑问。

Tomcat 容器如何处理请求,我的意思是说,当我发送对 home.jsp 页面的请求时,我得到的响应只是 home.jsp 页面,而不是一个 register.jsp 页面,同时可能是来自世界其他角落的其他人发出的请求。

例如:

Client A --------request(a.jsp)----------> Tomcat (check request received for a.jsp and give proper a.jsp response to client A)

Client B --------request(b.jsp)----------> Tomcat (check request received for b.jsp and give proper b.jsp response to client B)

在这种情况下,Tomcat 如何不混淆请求者和对正确请求者的响应。

它是如何在内部运作的。

一些解释这一点的链接也会有所帮助。

谢谢。

最佳答案

您基本上是在询问 TCP 的工作原理。这是一个很大的主题。基本上,它可以按原样恢复:Tomcat 在给定的 TCP 端口(默认为 8080)上监听连接。每次某些浏览器打开到 Tomcat 的连接时,该连接由远程主机的 IP 地址以及该主机用于连接到 Tomcat 的 TCP 端口标识。

浏览器通过此连接发送 HTTP 请求,当请求到达 Tomcat 时,Tomcat 从其线程池中分配一个线程来处理该请求。生成并发送响应后,线程返回到池中,准备好处理来自任何客户端的另一个请求。

TCP 栈本身不是由 Tomcat 实现的,而是由 OS 实现的。 Java运行时提供java.io.Socket等相关类,使用OS提供的底层TCP IP栈。而Tomcat依赖java.net.Socket等相关类。

关于jakarta-ee - Tomcat如何处理多个请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14567153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com