[摘要] 本文介紹了Web Services和COM+技術的特性及在物流管理系統中的應用,提出了基于Web Services和COM+技術的三層分布式物流管理系統的體系結構。通過應用系統在邏輯上多層分離與物理上的分布實施,真正實現了跨平臺、跨語言的軟件代碼重用,最后給出了系統實現實例,說明了用Web Services和COM+技術實現資源整合和系統集成的方法。
[關鍵詞] Web ServicesCOM+技術 分布式結構 系統集成
一、引言
隨著信息技術和市場經濟的發展,企業的市場環境瞬息萬變,供應鏈經常需要隨之作出適當調整,物流系統也要能夠及時調整,以支持供應鏈一體化的管理和控制。為了充分利用企業既有的專業物流服務,實現資源優化配置和提高企業綜合實力。本文研究了Web Services和COM+技術,提出了基于Web Services和COM+技術的三層分布式物流管理系統的體系架構,實現了跨平臺、跨語言的軟件代碼重用等系統集成需求和供應鏈一體化管理,把地域分布廣泛的供應商、生產制造商、服務商、分銷商和終端用戶聯結為一個整體,并保證信息自由準確的流動。
二、關鍵技術
1.Web Services 技術
Web Services技術是基于互聯網的和部署在Web上的對象組件技術,通過網絡存取、組合多個應用程序的方式來構建動態互用的環境,用于解決網絡環境下松散耦合的客戶程序與Web Services、Web Services之間的相互調用與集成。Web服務核心技術包括服務描述語言WSDL、服務訪問協議SOAP、服務發布和注冊機制UDDI。其核心構件塊如圖1。Web Services技術使用基于XML的消息處理作為基本的數據通訊方式,消除使用不同組件模型、操作系統和編程語言的系統之間的差異,協同運行異構系統。
Web服務由URI來標識應用組件,其接口和綁定的信息可以通過XML來實現定義、描述、發布和查找以及交互的功能。它不依賴于特定的硬件、操作系統和編程環境,支持面向服務體系結構,實現三種角色(服務提供者、服務代理和服務請求者)之間的交互。
2.COM+技術
COM+是微軟公司在COM、DCOM (Distributed COM)和MTS(Microsoft Transaction Server)基礎上進一步優化了組件管理環境與事務服務[3],提供了無縫連接系統,它以系統服務的形式把原先一些分散的技術綜合起來,并提供簡單的編程模型,以直接應用層的編程接口為應用程序提供服務,使創建服務器應用就像實現客戶應用一樣簡單。COM+把COM模型推向了更高層次,成為了企業級別分布式軟件開發領域的重要技術。
三、三層分布式物流管理系統的體系結構
基于Web Services和COM+技術的分布式物流管理系統體系結構,分為應用層、邏輯層、數據層三個層次,如圖2。
圖2 基于WebServices和COM+的三層分布式物流系統架構
在COM+技術提供了強大的應用分布與底層通信的基礎上,三層結構很好地實現了物流系統的應用、邏輯與事件的分離。應用與邏輯的分離規范了應用對數據的操作,增強了系統的可重用性,使得應用開發的重點放在與用戶的交互上;邏輯與數據的分離優化了數據的共享機制,增強了數據安全性。COM+一方面提供了許多新的服務和一個一致的管理環境,另一方面它支持說明性編程模型,即開發人員盡可能按通用的方式開發組件程序,將細節留到配置時刻再確定。
利用Web Services和COM+技術構建的三層分布式物流系統的體系結構,有效集成企業原有的專業物流服務和資源信息,實現協同工作環境下企業的資源優化和重組,提供了從原材料供應到最終產品銷售之間的全方位物流服務。具有以下特點:
(1)基于Web Services和COM+技術的物流管理系統,面向跨企業/部門的分布式管理。
(2)結合EAI集成技術,充分整合已有的專業物流服務和信息資源,如E_mail、資源管理等。
(3)多種安全控制權限,級別有用戶鑒定、服務器訪問控制、數據庫訪問控制、文檔訪問控制等。
(4) 實現邏輯上的多層和物理上的分布式處理,以及跨語言、跨平臺的代碼重用。
四、三層分布式物流管理系統的實現
利用Web Services與COM+組件技術,開發的三層分布式物流管理系統中,Web Services技術完全支持SOAP、HTTP協議和XML的標準,能輕松得跨越企業防火墻或代理服務器。COM+組件提供了ASP、ASP Servlet、ASPBean等技術,實現頁面動態內容的實現與顯示,ASP Servlet運行在Web服務器端的Servlet程序,支持多線程、多用戶訪問,能完成所有CGI功能。因此,基于Web Services與COM+技術的物流管理系統可以不受防火墻限制、能獨立于硬件、操作系統、應用開發環境,而對已有的財務軟件系統等進行整合,使公司內部、公司與客戶、供應商、交易伙伴進行多對多聯接,從而建立更加靈活、有效的公司協同工作環境,實現了應用子系統的松散耦合
客戶層在瀏覽器中運行,通過HTTP/HTTPS協議與應用層、邏輯層傳遞信息。系統代碼集中在Web服務器端,系統部署方便、可靠,降低了維護與更新成本。客戶層通過HTML/XML實現,用于顯示和收集信息。表單數據的合法性通過客戶端ASP代碼來檢驗。
業務邏輯層通過Servlet實現邏輯控制,負責處理HTTP請求;通過ASPBean組件實現業務邏輯,訪問數據庫;以ASP實現表示功能。ASP頁面只負責信息顯示功能,一般不處理業務邏輯。通過應用邏輯與表示邏輯的分離,應用邏輯組件獨立性更強,易于實現子系統的可重用性、可移植性、集成性。
數據層采用通用的RDBMS,通過ASPBean完成數據訪問和存儲。
基于Web Services與COM+技術的三層分布式物流管理系統在某物流公司得到了具體的應用如圖3,該公司屬松散型機構,在設計物流管理系統時,盡量不改變原有結構及正在使用的應用軟件資源,而是對現有資源進行整合和統一管理。
圖3 物流管理體系結構
五、結束語
本文以某物流公司為背景,針對物流管理業務邏輯復雜、業務節點分散、數據處理量大的特點,采用三層分布式結構,開發了基于WebService與COM+技術的物流管理系統。組件化的特點使得該系統具有良好的跨平臺性、廣泛集成的靈活性、快速高效性和可擴展性。
參考文獻:
[1]Jun Zhu.Web services Provide the Power to Integrate[J].IEEE Power and Energy Magazine, 2003,1(6):40-49
[2]S Vinoshi.Integration with Web Services[J].IEEE Internet Computing.2003,7(6):75-77
[3]How ASP.NET Web Services Work[EB/OL].http://msdn.microsoft.com/webservices/,2003-05
[4]Robert J,Oberg.UnderstandingProgramming COM+.電子工業出版社。2001
[5]M C Carboneras,C M Insa,E V Salort.ERP Implementation in the Stone Industry Special Difficulties and Solutions in the Production Area[J].IEEE Emerging Technologies and Factory Automation,2003,2(2):146-149
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。