Catalina 是一个非常复杂的,并优雅的设计开发出来的软件,同时它也是模块化的。基于“Servlet 容器是如何工作的” 这一节中提到的任务,你可以把 Catalina 看成是由两个主要模块所组成的:连接器(connector)和容器(container)。在 Figure I.1 中的架构图。

这里写图片描述

连接器是用来“连接” 容器里边的请求的。它的工作是为接收到每一个 HTTP 请求构造一个 request 和 response 对象。然后它把流程传递给容器。容器从连接器接收到 request 和 response 对象之后调用 servlet 的 service 方法用于响应。谨记,这个描述仅仅是冰山一角而已。例如,在它调用 servlet 的 service 方法之前,它必须加载这个 servlet,验证用户(假如需要的话),更新用户会话等等。容器为了处理这个进程使用了很多不同的模块。这也并不奇怪。例如,管理模块是用来处理用户会话,而加载器是用来加载servlet类等等。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐