PKUAS是一種面向領域的構件運行支撐平台。
PKUAS是一個符合JavaEE規範的構件運行支撐平台,支持3種標準EJB容器,包括無態會話容器、有態會話容器和實體容器,並支持遠程接口和本地接口,提供IIOP,jrmp,SOAP以及EJBLocal互操作機制,內置命名服務、安全服務、事務服務、日誌服務、資料庫連線服務;通過了JavaEE藍圖程式jps v1.1的測試。
為能夠明確標識、訪問和操縱系統中的計算實體,反射式中間件必須具備構件化的基礎設施體系。
基於Java虛擬機,PKUAS將平台自身的實體劃分為如下4種類型。
容器系統:容器是構件運行時所處的空間,負責構件的生命周期管理(如類裝載、實例化、快取、釋放等)以及構件運行需要的上下文管理(如命名服務上下文、資料庫連線等)。在PKUAS內置的3種EJB容器中,一個容器實例管理一個EJB構件的所有實例,而一個套用中所有EJB構件的容器實例組成一個容器系統。這種組織模式有利於實現特定於單個套用的配置和管理,如不同套用使用不同的通信連線埠、認證機制與安全域。
公共服務:實現系統的非功能性約束,如通信、安全、事務等。由於這些服務可通過微核心動態增加、替換、刪除,因此,為了保證容器或構件正確調用服務並避免服務卸載的副作用,必須提供服務功能的動態調用機制。對於供容器使用的服務,必須開發相應的截取器作為容器調用服務的執行點。對於供構件使用的服務,必須在命名服務中加以註冊。
工具:輔助用戶使用和管理PKUAS的工具集合,主要包括部署工具、配置工具與實時監控工具。其中,部署工具既可熱部署整個套用,也可熱部署單個構件,從而實現套用的線上演化;配置工具允許用戶配置整個伺服器或單個套用;而實時監控工具允許用戶實時觀察系統的運行狀態並作出相應調整。
微核心:上述3類實體統稱為系統構件,微核心負責這些系統構件的裝載、配置、卸載以及啟動、停止、掛起等狀態管理。PKUAS微核心符合Java平台管理標準JMX(Java Management eXtensions),繼承了JMX可移植、伸縮性強、易於集成其他管理方案、有效利用現有Java技術、可擴展等優點。其中,容器系統、服務、工具等被管理的系統構件組成資源層,通過MBean接口對外提供與管理相關的屬性和操作。負責註冊資源的MBeanServer和管理資源的外掛程式組成管理層。MBeanServer對外提供所有資源的管理接口,允許資源動態地增加或刪除。管理外掛程式則是執行其他管理功能的MBean,如PKUAS實時監控管理工具的核心功能就是通過管理外掛程式實現的。
PKUAS是由北京大學軟體所王千祥老師主持開發的,擁有自主智慧財產權。