官术网_书友最值得收藏!

1.3 Servlet容器的分類

根據Servlet容器工作模式的不同,可以將Servlet容器分為以下三類:

獨立的Servlet容器

當我們使用基于Java技術的Web服務器時,Servlet容器作為構成Web服務器的一部分而存在。然而大多數的Web服務器并非基于Java,因此,就有了下面兩種Servlet容器的工作模式。

進程內的Servlet容器

Servlet容器由Web服務器插件和Java容器兩部分的實現組成。Web服務器插件在某個Web服務器內部地址空間中打開一個JVM(Java虛擬機),使得Java容器可以在此JVM中加載并運行Servlet。如有客戶端調用Servlet的請求到來,插件取得對此請求的控制并將它傳遞(使用JNI技術)給Java容器,然后由Java容器將此請求交由Servlet進行處理。進程內的Servlet容器對于單進程、多線程的服務器非常適合,提供了較高的運行速度,但伸縮性有所不足。

進程外的Servlet容器

Servlet容器運行于Web服務器之外的地址空間,它也是由Web服務器插件和Java容器兩部分的實現組成的。Web服務器插件和Java容器(在外部JVM中運行)使用IPC機制(通常是TCP/IP)進行通信。當一個調用Servlet的請求到達時,插件取得對此請求的控制并將其傳遞(使用IPC機制)給Java容器。進程外Servlet容器對客戶請求的響應速度不如進程內的Servlet容器,但進程外容器具有更好的伸縮性和穩定性。

主站蜘蛛池模板: 五华县| 门源| 平湖市| 吴川市| 岢岚县| 米泉市| 枣庄市| 甘德县| 崇明县| 大悟县| 化德县| 临邑县| 曲松县| 铁岭县| 河南省| 江油市| 平乡县| 莫力| 南开区| 太仆寺旗| 望城县| 茌平县| 河津市| 玉屏| 安阳县| 满洲里市| 七台河市| 东海县| 井冈山市| 茂名市| 杭锦后旗| 牙克石市| 嘉黎县| 勃利县| 镶黄旗| 敦煌市| 原阳县| 左权县| 璧山县| 涟源市| 龙泉市|