freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于java的web服務器(編輯修改稿)

2024-10-08 02:49 本頁面
 

【文章內容簡介】 ngine 來處理,從 Engine 處獲得響應結果, 并返回給客戶端; Engine 代表一個 Service 所屬的請求處理機,它接受所有 Connector 傳遞過來的客戶端請求,將處理結果返回給 Connector,由Connector 將最終響應返回給客戶端, Engine 必須配置在 Service 組件下; Engine下可以配置多個 Host,每個 Host 都有一個域名,當 Engine 獲得一個請求時,它把該請求匹配到某個 Host 上,把請求交給該 Host 來處理; Host 代表一個虛擬主機,每個虛擬主機和某個網絡域名相匹配。每個虛擬主機下都可以部署一個或者多個 Web 應用程序,每個 Web 應用程序對應于一個 Context,有一個 Context 路徑;一個 Context 對應于一個 Web 應用程序,一個 Web 應用程序由一個或者多個 Servlet 組成。 Tomcat 整個系統(tǒng)的功能都是通過組件實現(xiàn)的,組件之間的通訊構成了系統(tǒng)的運行控制機制,具有很高的復用性和可擴展性。 組件技術 組件技術越來越廣泛地應用于軟件系統(tǒng)設計中,它是為提高軟件的可重用性而提出的,其思想是將軟件按一定的標準封裝成組件,對外提供一組訪問接口,指明組件與容器或與其它組件交互的機制。面向組件的技術( ComponentOriented, CO)是比面向對象的技術更高一層的抽象,它融合了面向對象的優(yōu)點,加入了安全性和可擴展的模塊設計,可以更好的映射問題域空間。采用面向組件的設計會帶來很多好處,可以提高復用性、降低耦合度和通過組裝構成系統(tǒng)等。 應用服務器系統(tǒng)吸取了組件技術所提供的優(yōu)點,采用開放的層次組件式結構,系統(tǒng)的各種資源均以服務的形式提供,服務按功能劃分層次,形成不同組件,服務與系統(tǒng)核心之間定義公共接口標準,所有服務采用標準接口實現(xiàn)與底層通訊。采用這種層次式組件結構,組件通過核心層定義的公共標準接口實現(xiàn)與底層通訊,系統(tǒng)功能作為組 件式服務部署和管理,整個系統(tǒng)可以在不影響現(xiàn)有應用的基礎上,實現(xiàn)對組件的修改和擴展。 JAVA 是一個基于組件的多層網絡應用體系結構,它定義了一套標準化的組件,并為這些組件提供了完整的服務,這意味著應用程序的不同部分可以運行在不同的設備和系統(tǒng)上。其核心是容器,容器提供了組件服務的運行環(huán)境和對企業(yè)信息系統(tǒng)的標準訪問,還提供了配置和部署應用程序行為的機制。 DM WAS 體系結構 服務器總體設計框架 JAVA 平臺從功能上大體可以劃分為兩個大的組成部分: Web 服務器和 EJB服務器。 Web 服務器主要是為 JSP 和 Servlet 提供運行平臺,實現(xiàn)企業(yè)應用程序的 Web 表示層; EJB 服務器主要是提供 EJB 組件的運行環(huán)境,為業(yè)務邏輯事務層服務。各個廠商一般會根據需要有選擇地實現(xiàn)全部或部分 JAVA 規(guī)范,如OpenEJB 是一個實現(xiàn)了 EJB 規(guī)范的純 EJB 容器, Tomcat 是一個主要提供 Servlet和 JSP 服務的 Web 容器,當然它也實現(xiàn)了 JNDI、連接池、事務處理等相關服務。 在總結國內外 Web 應用服務器研究的基礎之上,結合具體的需求分析,我們提出如下系統(tǒng)總體框架,如圖 所示。 圖 DM WAS 總體框架圖 由圖中可以看出,整個 Web 應用服務器的功能是由一個個的組件提供的。采用組件技術,能夠提高系統(tǒng)的可擴展性。整個系統(tǒng)由 11 種組件組成。 服務器啟停組件實現(xiàn)服務器的啟動與停止。服務器啟動時,完成如下一些工作: 初始化類裝載器,初始化 JNDI 服務,讀入服務器配置文件 (由XML 組件中的 xml 解析器完成解析),根據配置文件的內容配置相應的資源服務(如數據源的初始化),啟動“停止服務器”監(jiān)聽線程并注冊虛擬機停止鉤子( hook),初始化 Web 應用程序上下文,初始化并啟動 Http 連接管 理組件,初始化其它內置服務(如內置的數據庫等)。 連接管理組件 Http連接管理組件負責建立一個或多個 ServerSocket并監(jiān)聽來自客戶端的連接請求。它在初始化過程中獲取服務器啟停組件讀入的服務器配置信息,如服務器綁定的 IP 地址和端口號、線程池能夠允許的最大線程數和最小線程數等,建立 ServerSocket,并循環(huán)地接收客戶端的連接。當某個客戶端發(fā)出連接請求時,它建立一個 Socket 對象并將該對象包裝成 request 和 response 對象賦給請求處理任務的實例,交由線程池處理。 處理器 靜態(tài)資源處理器完成對靜態(tài)頁面 html、圖片等靜態(tài)資源的請求處理。如果用戶請求的是一個目錄,它可根據服務器的配置決定是否顯示歡迎頁面、顯示目錄內容或給出出錯信息。 容器 Servlet 容器是服務器的核心,它實現(xiàn)并擴展了 規(guī)范中的絕大多數接口。 Servlet 容器在系統(tǒng)啟動過程中完成初始化,包括 Web 應用程序上下文的配置、 Web 描述符的解析以及根據 Web 描述符的配置決定是否預先裝入某些Servlet。 它實現(xiàn)了基于 Session 和 Cookie 的會話管理機制,能夠有效地對 用戶會話進行跟蹤。 Servlet 實例池能夠對用戶的請求做出快速響應。根據 Web 描述符能夠處理任何匿名或非匿名的 Servlet 請求。 引擎 JSP 引擎是服務器的另一個核心組件,用來處理對 JSP 頁面的請求。當 Servlet容器監(jiān)聽到客戶端請求的是一個 JSP 頁面時,它將請求轉發(fā)給 JSP 引擎。 JSP 引擎將對 JSP 文件進行解析并生成相應的 Servlet 代碼,隨后對生成的 Servlet 進行編譯并加載到內存中,然后將該 Servlet 交給 Servlet 容器進行處理。上述過程會隨時因發(fā)生錯誤(如 JSP 文件寫法不規(guī) 范,找不到引用類等)而終止。對于所有的隨后而來的對該 JSP 文件的請求, JSP 引擎將檢查該 JSP 文件自最后一次被存取后是否經過修改。如果沒有修改則請求將交給還在內存中的 Servlet 以一種同時發(fā)生的方式加以處理。由于 Servlet 始終駐于內存,所以響應是非??斓摹H绻?JSP 文件被修改了, JSP 引擎將自動地對該文件重新編譯,并將結果取代內存中的 Servlet,并繼續(xù)上述處理過程。 數據庫連接管理組件管理數據庫的連接操作,它包括一個事務管理器和一個數據庫連接池。事務管理器采用 JTA 和 JTS 為開發(fā)者提供數據庫的事務支持,開發(fā)人員可以有選擇地通過 JNDI 訪問事務管理器控制事務或自己使用 JDBC 接口控制事務。 數據庫連接池實現(xiàn)了 接口并對開發(fā)人員屏蔽了引用的細節(jié),開發(fā)人員只需要通過 JDNI 查找 DataSource 的邏輯名稱就可以獲得數據庫連接從而操縱數據庫。 組件 XML 組件包括 XML 解析器、 XSL 轉換器、 XMLJDBC 組件等。它負責系統(tǒng)中所有 XML 文件的解析工作,能夠完成 XML 文件與關系數據庫之間數據的存取與轉換,以及與 XML 數據庫的連接。 組件 JNDI 組件為用戶訪問 Java 名字和目錄服務提供了便利,任何有關 JNDI 的查找和綁定工作都由該組件完成。 安全管理組件采用基于安全域( security realm)的方式實現(xiàn)服務器中用戶的認證和授權。在身份認證方面 ,使用基于 HTTP 基本驗證方式和基于表單( FORM)的認證方式;在授權方面,使用基于角色的訪問控制。所有安全操作由服務器管理,用戶只需在 Web 應用描述符中進行配置。 日志管理組件負責系統(tǒng)的日志記錄工作。我們采用了優(yōu)秀的日志記錄軟件Log4j 并對其進 行了擴展以滿足本地化需求。日志管理組件提供分級方法在程序中嵌入日志記錄語句。日志信息具有多種輸出格式和多個輸出級別,用戶可根據需要進行定制,以捕捉有關應用程序運行時行為的細節(jié)。 服務器接口組件負責與 DM EJB 服務器的連接工作。它通過 JNDI 與 DM EJB服務器進行通信,從而實現(xiàn) DM WAS 和 DM EJB 服務器的互連,形成一個完整的 JAVA 應用服務器。 服務器總體方案的特點 基于 JAVA 的 DM WAS 處于 Web 瀏覽器 /DM WAS/DM 數據庫服務器三層體系結構的中間層,該服務 器具有 6 個基本特點。 DM WAS 嚴格遵循 JAVA 規(guī)范,任何符合 JAVA 規(guī)范的 Web 應用程序都能夠在我們的服務器中正確地配置和運行。 DM WAS 嚴格來說是一個 Web 容器,但我們提供與 DM EJB 服務器的整合,從而可以給用戶提供完整的 JAVA 開發(fā)環(huán)境。 在服務器中可以配置各種組件的安全性,只有被授權的用戶才能訪問系統(tǒng)資源。每一個客戶隸屬于一個特定的角色,而每個角色只能訪問特定的資源。開發(fā)人員可以在應用部署描述符中聲明角色和可被訪問的資源,而不必在應用程序中硬編碼安全規(guī)則。 用戶可以通過服務器配置文件方便地對各項參數進行修改,從而達到最佳運行效果。 我們提供良好的操作管理界面幫助服務器管理人員管理服務器以及部署在服務器中的 Web 應用程序。 服務器應用程序目錄結構規(guī)范, Web 應用程序部署方便簡單,具有對 WAR文件的自動解壓,簡單的批處理文件使得啟停服務器變得異常方便。 DM WAS 的運行過程 DM WAS 基于 HTTP/ 協(xié)議,支持 JAVA 中 Servlet、 JSP、 JDBC、 JNDI等相關規(guī)范,能夠部署大多數基于 Web 的 Java 應用。 DM WAS 由服務器核心類、Java 核心類庫、第三方軟件包、一組配置文件和多個 Web 應用程序組成。 服務器在啟動時讀入并解析服務器配置文件,并初始化一系列服務,包括類裝載器、數據庫連接池、 JNDI、數據源等資源在 JNDI 上的綁定、線程池、 Web應用程序的上下文等,最后建立 ServerSocket,等待客戶端連接。 第三章 系統(tǒng)技術實現(xiàn) Http 連接管理組件 一個客戶機與一個服務器要進行有效的通信,他們之間必然要遵守某種共同的協(xié)議,當前,瀏覽器和 Web 服務器之間大多 采用超文本傳輸協(xié)議 HTTP 進行通信。 HTTP 協(xié)議是基于 TCP/IP 協(xié)議之上的應用層協(xié)議,具有無連接、無狀態(tài)、面向對象等幾個特點。 HTTP 協(xié)議基于請求 /響應機制,其工作原理包括四個步驟。 :瀏覽器與服務器建立連接,打開一個稱為套接字( socket)的虛擬文件,此文件的建立標志著連接建立成功。 :瀏覽器通過 socket 向服務器提交請求。 :服務器接收到該請求后,進行相應的事務處理,然后將處理結果通過 HTTP 傳回給瀏覽器。 :當應答結束后,服務器斷開與瀏覽器的連接,以保證更多的 瀏覽器能夠與服務器建立連接。 Http 連接管理組件位于 DM WAS 的最前端,它在服務器啟動過程中獲取服務器配置參數并初始化,負責監(jiān)聽端口,接收請求消息,并且將處理后的回復反饋給客戶端。 組件實現(xiàn) Http 連接管理組件基于 HTTP 協(xié)議,負責建立一個或多個服務器 Socket 并監(jiān)聽來自客戶端的連接請求。當某個客戶端發(fā)出連接請求時,它建立一個 Socket對象,讀出 Socket 輸入輸出流,將輸入流進行解析并提取相關信息,然后實例化一個請求處理任務,并將輸入輸出流分別包裝成 request 和 response 對象 賦給該任務,交由線程池處理。流程圖如圖 所示。 圖 Http 連接管理組件流程圖 Http 連接管理組件由 LifeCycle、 Server、 HttpServer、 ConnectionHandler、RequestHandler、 Request、 Response 等類和接口以及實現(xiàn)線程池的相關類組成。 下面詳細介紹一下相關的數據結構。 interface LifeCycle{ void start()throws LifeCycleException。 void stop()throws LifeCycleException。 boolean isStarted()。 } LifeCycle 代表組件的生命周期接口,其目的是以一種一致的方式來管理組件的啟動與停止。服務器中所有具有生命周期的組件如服務器類、應用程序上下文類都必須實現(xiàn)該接口。 interface Server extends LifeCycle{ String getServerInfo()。 String getServerName()。 int getServerPort()。 String getAppBase()。 URLClassLoader getWebappParentClassLoader()。 } Server 代表整個服務器,它包含服務器的相關屬性信息,負責服務器的啟動與停止。 它由服務器啟停組件調用。 HttpServer 類是對 Server 接口的實現(xiàn),并擴展了對 Servlet 容器的接口。 class ConnectionHandler implements LifeCycle{ ServerSocket openSocket()throws LifeCycleException。 void acc
點擊復制文檔內容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1