企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### Servlet容器工作模式 1. **独立运行的Servlet容器** 在这种模式下,**Servlet容器作为构成Web服务器的一部分而存在**。当使用基于Java的Web服务器时,就属于这种情况。**这种方式是Tomcat的默认模式**,然而大多数Web服务器并不是基于Java的,所以就产生了下面的两种其他类型 2. **内置的Servlet容器** **Servlet容器由Web服务器插件和Java容器两部分组成**。采用这种方式时,**Web服务器插件需要在某个Web服务器内部地址空间中打开一个JVM(Java虚拟机),在此JVM上加载Java容器并运行Servlet**。如果客户端调用Servlet,Web服务器插件首先获得此请求的控制并将它传递(使用JNI技术)给Java容器,然后Java容器把此请求交给Servlet来处理。这种方式运行速度较快,并且能够提供良好的性能,适用于单进程、多线程服务器,但是在伸缩性方面存在不足 3. **外置的Servlet容器** 采用这种方式时,**Servlet容器运行在Web服务器外部地址空间**。先由**Web服务器插件在某个Web服务器外部地址空间打开一个JVM(Java虚拟机),然后加载Java容器来运行Servlet**。Web服务器插件和JVM之间使用IPC(进程间通信)机制(通常是TCP/IPSockets)。如果客户端调用Servlet,Web服务器插件首先获得此请求的控制并将它传递(使用IPC技术)给Java容器,然后Java容器把此请求交给Servlet来处理。这种方式对客户端请求的处理速度不如内置Servlet那样快,但是在其他方面(如可伸缩性、稳定性等)具有优势 Tomcat属于Servlet容器,其工作模式也分为上述3种,所以Tomcat既可被用作独立运行的Servlet引擎(便于开发和调试),又可作为一个需要增强功能的Web服务器(如当前的Apache、IIS和Netscape服务器)插件