我知道创建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如何不混淆请求者和正确请求者的响应。
它是如何内部工作的。
一些链接,解释这一点也将是有益的。
谢谢。
发布于 2013-01-28 20:17:00
你基本上是在问TCP是如何工作的。这是一个相当大的课题。基本上,它可以恢复为: Tomcat侦听给定TCP端口上的连接(默认情况下为8080)。每当某个浏览器打开到Tomcat的连接时,该连接都由远程主机的IP地址和该主机用于连接Tomcat的TCP端口标识。
浏览器通过此连接发送HTTP请求,当请求传入Tomcat时,Tomcat从其线程池中分配一个线程来处理请求。当响应生成并发送时,线程返回到池,准备为来自任何客户端的另一个请求服务。
TCP堆栈本身不是由Tomcat实现的,而是由OS实现的。Java运行时提供java.io.Socket和其他相关类,这些类使用操作系统提供的底层TCP堆栈。Tomcat依赖于java.net.Socket和其他相关类。
https://stackoverflow.com/questions/14567153
复制相似问题