2013-08-22 51 views
-3

我對servlets很新。我收集了一些關於他們的信息,請告訴我我錯在哪裏。 Apache是​​一臺服務器,它將在服務器機器上運行,基本上是它的一個應用程序我們的Java Servlets也將駐留在服務器機器上並將與此服務器交互。基本上apache只接受請求,如果它包含URL中所需的網頁,則通過創建一個套接字將其發送回客戶端。如果它不包含網頁,它會與我們的Servlet應用程序進行交互,該應用程序將在html中爲其提供網頁,並將其進一步發送回客戶端。 apache服務器與java servlet的交互對我們來說是完全隱藏的。我們所有的Java servlet都將被包含在tomcat的容器中。是apache的服務器

+0

APACHE是web服務器,請檢查apache.org – PravinS

+1

*「Apache httpd」是一個web服務器 – OrangeDog

+2

這是什麼問題? – ewernli

回答

2

的Apache Web服務器 - 是用C語言編寫的服務器負責處理HTTP協議和提供正常的Web內容,如HTML頁面,圖片等,還支持各種插件動態內容,如服務器端包含,PHP和連接到Servlet容器。它本身不是一個servlet容器。

Apache Tomcat - 也是一個用Java編寫的web服務器。它專門爲Servlet設計,但也提供HTML和圖像。過去它比本地Apache Web服務器慢一點(由於JVM開銷和麪向servlet的設計),因此在某些體系結構中,您將擁有一個提供正常靜態內容(HTML,Javascript,圖像等)的Apache Web服務器。並有一個連接到Tomcat的動態servlet生成內容的處理程序。它可能仍然是高擴展性需求的首選架構,但有時這會使事情變得更加複雜,因此值得商榷。

兩者都由同一個開源基礎的Apache維護。還有其他的web服務器(例如nginx)和servlet容器(例如Jetty)。

4

有Apache基金會,Apache項目,Apache許可證和Apache下的各種項目。

最有名的項目/產品就是Apache httpd的,Web服務器,往往只是命名爲「阿帕奇」,但你可以概括所有其他部件的該名稱下爲好。

「Apache Tomcat」是一個servlet容器/應用程序服務器,您可以使用它來託管java web應用程序。

「阿帕奇的httpd」通常用作前端Web服務器,與「阿帕奇雄貓」通信,無論是通過組件命名的mod_proxy或mod_jk的(也許其他人也)

或者,換句話說,我有不知道你在問什麼,但也許這有助於識別具有相同(或類似)名稱的不同項目。

聲明:我可能會使用不同的名稱不正確,以及...

1

對於一些人來說,包括我在內,通常阿帕奇意味着apache httpd的,當我們談論網絡服務器。 對於某些特定場景,您是正確的。 Apache是​​一個善於處理靜態頁面的服務器,tmocat是一個很擅長生成動態頁面(比如你提到的servlet)的服務器。它們中的任何一個都可以獨立使用。正如你所提到的,它們也可以一起使用,用apache處理靜態頁面和處理servlet的tomact。 mod_jk是提供apache和tomcat之間橋接的模塊。

1

號Apache是​​一個免費的軟件基礎。 Apache HTTPD是一個服務器。