Sun Java System Application Server 提供了與 Java EE 相容的伺服器,可用來開發和部署 Java EE 應用程式和 Java Web 服務。主要功能包括可縮放式作業事件管理、容器管理式的持續性執行階段、高效能 Web 服務、叢集、高可用性、安全性以及整合功能。本小節包含下列主題:
每個管理網域都與一個用法設定檔相關聯,可識別該網域的功能。Application Server 提供下列設定檔:
開發者:若是在開發環境中執行網域,且應用程式不需要 NSS 金鑰庫或叢集功能 (如負載平衡及階段作業持續性),請使用此設定檔。
叢集:如果需要建立叢集,但不需要高可用性資料庫 (HADB) 或 NSS 金鑰庫,請使用此設定檔。
企業:如果需要 HADB 和 NSS,請使用此設定檔。僅當分開安裝 HADB 和 NSS,或將 Application Server 安裝成 Java Enterprise System (JES) 的元件時,才能使用此設定檔。如需有關如何將企業設定檔與 Application Server 9.1 搭配使用的資訊,請參閱使用企業設定檔
只有企業設定檔支援從 Application Server 8.x Enterprise Edition 升級。如果是從 Application Server 8.x Platform Edition 升級,請使用開發者設定檔。如需有關升級程序的更多資訊,請參閱「Sun Java System Application Server 9.1 Update 1 Upgrade and Migration Guide」中的第 2 章「Upgrading an Application Server Installation」。
網域為使用者應用程式提供預先配置的執行階段。用法設定檔有助於區分 Application Server 二進位碼與執行階段配置。設定檔讓您使用相同的 Application Server 安裝,即可藉由適合不同用途的設定檔建立不同網域。例如,開發者可能希望使用 Application Server 來瞭解最新的 Java EE 規格。這個開發者不需要嚴格的安全性設定。但另一個想在生產環境中部署應用程式的使用者則需要原本就安全的環境。
表 1–1 列出每個設定檔的可用功能:
表 1–1 每個設定檔的可用功能
功能 |
開發者設定檔 |
叢集設定檔 |
企業設定檔 |
---|---|---|---|
安全性存放區 |
JKS |
JKS |
NSS |
叢集/獨立實例 |
不可用 |
可用 |
可用 |
安全性管理員 |
已停用 |
已啟用 |
已啟用 |
HADB |
不可用 |
不可用 |
可用 |
負載平衡 |
不可用 |
可用 |
可用 |
節點代理程式 |
不可用 |
可用 |
可用 |
若要使用企業設定檔,請執行下列作業:
分別下載並安裝 NSS 與 HADB。
如下所示,修改 asenv.conf 檔案:
AS_HADB 指向 HADB 的安裝資料夾。
AS_NSS 指向提供 NSS 共用物件的資料夾。
AS_NSS_BIN 指向儲存 NSS 二進位碼 (例如 certutil) 的資料夾。
您可以使用 start-domain 指令,將 Application Server 8.x 或 9.0 網域升級到 Application Server 9.1。請使用下列其中一種方式來升級網域:
執行 Application Server 二進位碼的就地升級。
當您在指向舊版 Application Server 的網域上執行 start-domain 時,asadmin 將呼叫 asupgrade 指令,並且會自動就地升級網域。
執行 Application Server 二進位碼的同時升級。
在先前安裝的網域上執行 start-domain。asupgrade 指令可將網域升級到最新 Application Server 安裝的網域根目錄。在此案例中,會在 asenv.conf 的 AS_DEF_DOMAINS_PATH 中定義升級的目標目錄。
Application Server 是一個平台,支援的服務包含從 Web 發佈到企業範圍內的作業事件處理,同時可讓開發人員基於 JavaServer Pages (JSPTM)、Java servlet 以及 Enterprise JavaBeansTM (EJBTM) 技術建置應用程式。
Application Server 9.1 叢集和企業設定檔提供進階的叢集和容錯移轉技術。這些功能讓您執行可延伸且具有高可用性的 Java EE 應用程式。
叢集 - 叢集是一組 Application Server 實例,這些實例以單一邏輯實體的形式一起運作。叢集中的每個 Application Server 實例均部署有相同配置和相同的應用程式。
透過將 Application Server 實例增加至叢集來實現水平比例縮放,從而增加系統容量。可以在不中斷服務的情況下將 Application Server 實例增加至叢集。HTTP、RMI/IIOP 和 JMS 負載平衡系統會將請求分散到叢集中運作狀態良好的 Application Server 實例中。
高可用性 - 可用性允許對叢集中的 Application Server 實例進行容錯移轉保護。如果一個 Application Server 實例出現故障,則其他 Application Server 實例將接管指定給該故障伺服器的階段作業。階段作業資訊儲存在高可用性資料庫 (HADB) 中。HADB 支援 HTTP 階段作業和有狀態階段作業 Bean 的持續性。
本小節說明圖 1–1,該圖顯示了 Application Server 的整體架構。
容器 - 容器是一種執行階段環境,它為 Java EE 元件提供安全性和作業事件管理等服務。圖 1–1 顯示了兩種類型的 Java EE 容器:Web 和 EJB。Web 元件 (例如 JSP 頁面和 Servlet) 在 Web 容器內執行。企業 Bean (EJB 技術的元件) 在 EJB 容器內執行。
用戶端存取 - 在執行階段,瀏覽器用戶端透過 HTTP (在網際網路中使用的協定) 與 Web 伺服器進行通訊來存取 Web 應用程式。HTTPS 協定用於需要安全通訊的應用程式。企業 Bean 用戶端透過 IIOP 協定或 IIOP/SSL (安全) 協定與物件請求代理程式 (ORB) 通訊。Application Server 具有分別用於 HTTP 通訊協定、HTTPS 通訊協定、IIOP 協定和 IIOP/SSL 協定的偵聽程式。每個偵聽程式專用特定的連接埠號碼。
Web 服務 - 您可在 Java EE 平台上部署 Web 應用程式,以提供 Java API for XML-Based RPC (JAX-RPC) 實作的 Web 服務。Java EE 應用程式或元件還可以是其他 Web 服務的用戶端。應用程式通過用於 XML 登錄的 Java API (JAXR) 存取 XML 登錄。
用於應用程式的服務 - Java EE 平台旨在使容器為應用程式提供服務。圖 1–1 顯示了以下服務:
作業事件管理 - 作業事件是不可分割的工作單元。例如,在銀行帳戶之間轉帳是一個作業事件。作業事件管理服務用於確定完全完成作業事件或將作業事件轉返。
Java EE 平台使應用程式能夠存取 Application Server 之外的系統。應用程式通過稱為資源的物件連線到這些系統。管理員的職責之一是資源配置。Java EE 平台可以透過以下 API 和元件存取外部系統:
JDBC - 資料庫管理系統 (DBMS) 提供了用於儲存、組織和擷取資料的功能。大多數企業應用程式將資料儲存在關聯式資料庫中,這些應用程式透過 JDBC API 存取關聯式資料庫。由於資料庫中的資訊儲存在磁碟上並在應用程式結束之後仍然存在,因此通常將資料庫中的資訊稱為持續性資訊。Application Server 隨附軟體包括 Java DB 資料庫。
訊息傳送 - 訊息傳送是軟體元件或應用程式之間的一種通訊方法。訊息傳送用戶端可以向任何其他用戶端傳送訊息,也可以從任何其他用戶端接收訊息。應用程式通過 Java 訊息傳送服務 (JMS) API 存取訊息傳送提供者。Application Server 包含 JMS 提供者。
連接器 - Java EE 連接器架構可整合 Java EE 應用程式和現有企業資訊系統 (EIS)。應用程式透過稱為連接器或資源配接卡的可移植 Java EE 元件存取 EIS。
伺服器管理 -圖 1-1 右下角顯示 Application Server 管理員可執行的一些作業。例如,管理員部署 (安裝) 應用程式並監視伺服器的效能。這些作業透過 Application Server 提供的管理工具來執行。
Application Server 提供了下列管理工具和 API:
管理主控台是一種基於瀏覽器的工具,具有易於導覽的介面和線上說明。管理伺服器 (也稱為 Domain Administration Server 或 DAS) 必須在執行狀態下,才能使用管理主控台。若要啟動管理主控台,必須知道管理伺服器主機名稱和連接埠號碼。您當初安裝 Application Server 時已選擇伺服器的連接埠號碼,或使用預設的連接埠 4848。您也已經指定使用者名稱和主密碼。
若要啟動管理主控台,請在 Web 瀏覽器中鍵入以下內容:
http://hostname:port |
例如︰
http://kindness.sun.com:4848 |
如果管理主控台在安裝了 Application Server 的機器上執行,請將 localhost 指定為主機名稱。
在 Windows 上,從 [開始] 功能表啟動 Application Server 管理主控台。
安裝程式將建立使用預設連接埠號碼 4848 的預設管理網域 (名為 domain1),並會建立獨立於 Domain Administration Server (DAS) 的實例。安裝之後,還可以建立其他管理網域。每個網域都具有自己的網域管理伺服器,該伺服器具有唯一的連接埠號碼。為管理主控台指定 URL 時,請務必使用要管理的網域的連接埠號碼。
如果配置中包括遠端伺服器實例,請建立節點代理程式以便管理和簡化遠端伺服器實例。節點代理程式負責建立、啟動、停止和刪除伺服器實例。使用指令行介面 (CLI) 指令可以設定節點代理程式。
asadmin 公用程式是 Sun Java System Application Server 的指令行介面。使用 asadmin 公用程式及其相關指令,可執行管理主控台所提供的相同管理作業集。Solaris 上的預設安裝根目錄為 /opt/SUNWappserver。
若要啟動 asadmin 公用程式,請移至 as-install/bin 目錄並輸入:
$ ./asadmin |
若要列出 asadmin 中的可用指令,請使用:
asadmin> help |
也可以在 Shell 的指令提示符號下發出 asadmin 指令:
$ asadmin help |
若要檢視指令的語法和範例,請鍵入 help 並在其後鍵入指令名稱 。例如︰
asadmin> help create-jdbc-resource |
所指定指令的 asadmin help 資訊可顯示此指令的 Unix 線上手冊。另外,在「Sun Java System Application Server 9.1 Reference Manual」 中還提供 HTML 和 PDF 格式的線上手冊。
Java 2, Platform Standard Edition 5.0 中引入了 Java Monitoring and Management Console (JConsole)。JConsole 用於監視 Sun Java System Application Server。您可以使用 JConsole [遠端] 標籤或 [進階] 標籤連線至 Application Server。
[遠端] 標籤:識別使用者名稱、密碼、管理伺服器主機和 JMS 連接埠號碼 (預設為 8686),然後選取 [連線]。
[進階] 標籤:將 JMXServiceURL 識別為服務:jmx:rmi:///jndi/rmi://host:jms-port/jmxrmi,然後選取 [連線]。JMXServerURL 會列印在 server.log 檔案中,也會輸出在網域建立指令的指令視窗上。
Application Server Management eXtension 是一個 API,它可顯示所有 Application Server 配置,並可將 JMX 管理 Bean 做為實作 AMX 介面的、易於使用的用戶端動態代理伺服器來進行監視。
如需使用 Application Server Management Extension 的更多資訊,請參閱「Sun Java System Application Server 9.1 Developer’s Guide」中的第 20 章「Using the Application Server Management Extensions」。