
本文主要介紹了SOA的基本結構及其在電子商務系統方面的應用優勢,為企業的電子商務系統的建設提供參考。
一、SOA的概念
SOA(Service-Oriented Architecture)即面向服務架構,最早作為一種軟件系統的開發方法,現在更多的作為一種軟件架構,或是企業信息化建設和實現電子商務的一種方式。SOA可以理解為一個組件模型,它將不同架構的軟件提供的服務聯系起來,類似于粘合劑的作用,可以把企業不同的系統數據相融合。
由于系統平臺、架構、技術和版本等因素,不是所有的信息系統都可以實現資源共享。很多企業會出現不同種類的操作系統、應用軟件、系統軟件和應用基礎結構相互交織,或者同一公司擁有開發于不同時期、架構不同平臺和技術上的諸多軟件等情況。一些已投入使用多年的信息服務用來處理當前的業務,當企業業務增長后,從頭開發一個新的環境或者重新實施一個新的ERP項目幾乎是不可能的。如何才能讓企業對業務的變化做出快速的反應,利用對現有的應用程序和架構的投資來解決新的業務需求,應對突發的業務變化,為客戶、合作伙伴及供應商提供新的互動渠道,并呈現一個可以支持有機業務的構架,無疑是給企業提出的一個巨大挑戰。SOA正是在這種挑戰下脫穎而出的。
二、SOA的特性
SOA可以靈活的為服務提供者與消費者選擇實現技術和部署位置。只要服務接口保持穩定,抽象出來的接口就能讓提供者和消費者獨立演變。所以基于SOA的信息化系統可以提供與業務更貼合的信息化服務,更便利的解決跨行業、跨部門的信息資源互聯互通,推動重要信息資源的開發利用,并可以支撐和促進各行業相關的業務變革和發展。
事實,實現接口的穩定性是SOA面臨的最大挑戰。因為業務服務接口的作用不只是確定了系統的邊界。業務服務對業務流程的一部分進行了封裝,建立了被封裝部分和其余部分之間的接口。以“銷售訂單管理服務”為例,它封裝了業務流程中創建和維護銷售訂單的部分。由此看出,在定義業務服務時,既是為系統也是為業務流程搭建架構。可見信息與業務流程的運轉息息相關,即便最簡單的服務也管理著一些信息。服務的定義決定了它要管理的信息,并使其區別于其他系統組件和服務所管理的信息。“銷售訂單管理服務”是銷售訂單信息的記錄系統,但不管理倉庫庫存。通過這種方式,業務服務完成了對信息的模塊化的分解。界定了每個模塊的服務范圍。不同模塊之問的數據需求即為模塊需要提供的服務。
由此,SOA服務需具有以下特性:
(1)SOA服務用消息進行通信,應具有平臺的語法和語義文件,該消息通常使用XML Schema來定義。在企業內部,SOA服務通常是利用一個目錄列表角色的登記處來進行維護。應用程序再在登記處查尋并調用某項服務。統一描述、定義和集成是服務登記的標準,每項SOA服務都有一個與之相關的服務品質(Quality of service,QOS)。QOS的一些關鍵元素有安全需求(例如認證和授權),可靠通信(是指確保消息“僅且僅僅”發送一次,從而過濾重復信息。),以及誰能調用服務的策略。
(2)SOA把業務組件分成基本的構建模塊,就像通過標準化軟件接口實現lT基礎設施的模塊化,從而使業務流程可以與IT流程相匹配。
CIO頻道人物視窗
CIO頻道方案案例庫
大數據建設方案案例庫
電子政務建設方案案例庫
互聯集成系統構建方案案例庫
商務智能建設方案案例庫
系統集成類軟件信息研發企業名錄