jetty 研究
- 一個 java的網頁容器,特色是提供一個鑲嵌在應用程式內的網頁伺服器,小巧易用效能又高,提供一個靜態網頁伺服器功能只需300k的記憶體
- a 100% Java HTTP Server and Servlet Container
- Open Source
jetty特性:
- 易用性
- 通過 XML 或者 API 來對 Jetty 進行配置;
- 默認配置可以滿足大部分的需求;
- 將 Jetty 嵌入到應用程序當中只需要非常少的代碼;
- 可擴展性
- 即使在有大量服務請求的情況下(如Ajax 的 Web 2.0),系統的性能也能保持在一個可以接受的狀態。
- 利用 Continuation 機制來處理大量的用戶請求以及時間比較長的連接。
- 易嵌入性
- Jetty 設計之初就是作為一個優秀的組件來設計的,這也就意味著 Jetty 可以非常容易的嵌入到應用程序當中而不需要程序為了使用 Jetty 做修改。從某種程度上,你也可以把 Jetty 理解為一個嵌入式的Web服務器。
apt-get 之 jetty
安裝jetty
/usr/share/jetty/ | | jetty home
|
| cgi-bin/ | 0
|
| ext/ | 0
|
| lib/ | jar檔
|
| webapps/ | root下有預設網站
|
/usr/share/doc/jetty/ | | 文件目錄
|
/var/log/jetty/ | | log
|
/usr/share/java/ | jetty-5.0.0.jar | 主程式
|
/etc/jetty/ | | 設定檔
|
/etc/default/ | jetty | 0
|
/etc/init.d/ | jetty | 驅動檔
|
啟動 jetty
- ps : 不知設定檔如何找出port :
- ps2: jetty的預設網頁裡的tutorial 還不錯
src 之 jetty
安裝
啟動
cd $jetty_home
java -jar start.jar etc/jetty.xml
開發jetty
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure id="Server" class="org.mortbay.jetty.Server">
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="port">8080</Set>
<Set name="maxIdleTime">30000</Set>
<Set name="lowResourcesConnections">5000</Set>
<Set name="lowResourcesMaxIdleTime">5000</Set>
</New>
</Arg>
</Call>
<Set name="handler">
<New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
<Set name="handlers">
<Array type="org.mortbay.jetty.Handler">
<Item>
<New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>
</Item>
<Item>
<New class="org.mortbay.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="resourceBase">F:/Data/WebApp</Set>
<Set name="overrideDescriptor">config/JettyWeb.xml</Set>
</New>
</Item>
</Array>
</Set>
</New>
</Set>
</Configure>
- hadoop的web server 用jetty 所搭配的 資料夾與 port 對應
$hadoop_home/webapps/task/ | 50060
|
$hadoop_home/webapps/dfs/ | 50070
|
$hadoop_home/webapps/datanode/ | 50010
|
$hadoop_home/webapps/job/ | 50030
|
$hadoop_home/webapps/task/ | 50060
|
$hadoop_home/webapps/dfs/ | 50070
|