李德俊,黃洪濤
(1.南方電網財務公司,廣東 廣州 510623;2.南方電網數字電網研究院有限公司,廣東 廣州 510623)
為了解決隨著企業發展和成長中對于IT 需求的日益提升,面向服務的架構(Service-Oriented Architecture,SOA)自提出到被普遍認可和接受,再到目前應用普及和成熟已有20 多年的時間,在領域的應用經歷了Web Service、企業服務總線(ESB)等不同階段。目前容器化、微服務等最新的IT 架構理念又賦予了服務治理更豐富內涵。
近年來,各大金融機構都開始推動服務化進程,希望通過接口的服務治理解決IT 系統架構的問題。就目前國內銀行與其他金融機構的SOA 架構建設情況而言,多數在實施企業服務總線的過程中,是基于目前遇到的一些IT 困難而建設的,沒有從整體IT 架構出發,沒有考慮到未來發展的需要,因此在建設過程中重基礎設施建設,輕標準和規范的建設。直接導致很多金融機構的SOA 建設有一定的盲目性,在這種情況下,基于SOA 的服務治理工作的作用就變得十分關鍵,通過開展服務治理,建設適合于本企業長遠戰略發展的服務目錄,穩步保證為了企業系統架構的可持續化、規范化的發展方式[1]。
縱觀大單體時代企業IT 架構的各種問題,整理歸納下來可以概括為以下幾個方面:企業膨脹、邏輯浪費、私約對抗公約、缺乏本征互操作性。
本文對上述的4 個問題進行具體討論,發現了基于SOA的服務治理方法論,以期解決IT 架構與戰略級的矛盾。
企業需要不斷成長,規模必然要不斷擴大,而IT 架構的復雜性大部分來源于企業的這種膨脹,這種膨脹包括業務產品的更新和擴大,組織管理架構的調整和規模擴大,以及不斷面臨的新技術挑戰和同業競爭壓力,而面對這種企業膨脹的問題,服務治理同樣不是銀彈,服務治理同樣沒辦法保證永遠不去重構系統。軟件系統也有使用壽命,對于軟件系統的每一次修改和維護,既是它的升級優化,也是它的折舊磨損,最終每個系統以及系統之間還是會形成一個“泥球”,任何一種方法論都不能對抗熵增。因此,服務治理的價值和意義就在于通過規范的手段,盡可能地延長系統的“壽命”,讓其從設計之初就具備極高的素質,并且在后續不斷地迭代中保持統一的顆粒度和尺度。
邏輯浪費是金融機構和普通企業最常見的IT 資源和資產上的浪費,盡管從底層代碼的開發上人們就一直強調DRY原則(Don’t Repeat Yourself),但是邏輯浪費這個問題依然無法避免,從小的方面來看包括接口功能上的重疊、接口冗余、缺乏復用,從大方面來看包括系統邊界不清、缺乏領域邊界管理,但也不能苛求開發人員和業務架構師對所有領域的服務都了如指掌,對所有IT 資產都事無巨細,所以服務治理的指導原則之一就是通過全面、統一的編排,重新梳理IT 資產,使資源不再浪費。
私約對抗公約的根源就在于系統壁壘和領域壁壘的問題,而這些問題則廣泛存在于企業級的IT 領域,多數情況下,如果不是一個純粹的IT 企業,都存在一定的問題,尤其是在金融領域。這是因為企業內部的系統在傳統建設思維下,都是一個又一個的系統孤島,彼此間沒有約束和管理。長期下來不斷地形成系統彼此間的“私約”,導致這種鏈路構成不斷地固化,進而喪失靈活性。而服務治理工作所推動的服務契約(包括服務接口協議、服務操作協議、服務水平協議)就是在構建一個全行級系統間的“公約”,形成一個明文的約束,并形成制定規范、推行規范、檢查約束、違約仲裁的管理體系。
本征互操作性低是指接口間缺乏有效對齊,每個接口都有自己的操作規范和要求,這樣的設計如何才能實現服務的快速編排、快速組合呢?就像人們本想像拼接樂高一樣組合業務,但卻發現手里的積木根本插不到一起去,服務治理和服務治理平臺就是一個“積木工廠”,把每一個接口都規范化、標準化,實現數據對齊,上下文統一,為快速搭建業務流程提供助力。
關于服務治理在IT 架構戰略中投資回報的問題,不要從眼前的短期收益著手,如果每一次都把IT 資源和資產設計成可以被重復使用的形式,則這個資源在第一次被使用之后的每一次復用都是在節約成本,如圖1 所示,所以在進行ROI 分析的過程中人們往往會忽視服務設計的成本是分攤在后續的每一次復用中的,隨著企業膨脹,這種投資回報率的優勢將不斷地凸顯,并且通過這種快速高效的復用,實現業務的敏捷開發高效落地。

圖1 服務治理對于業務落地在代際版本間的投入影響
另外,需要關注的是服務治理收益體現的是一個長期的過程,短期來看,積極的服務治理比不做服務治理投入了更多的治理成本(比如服務設計花費的時間,不合理服務的改造成本,服務發布、變更、下線均需要走流程審批的成本),但當企業業務進入急速爆發期時,積極的服務治理在前期投入的成本會極大地助力企業快速擴張,產出極高效益。所以,往往對于服務治理不認同的觀點輿論中,普遍是關注了服務治理的短期收益,卻沒有注意到服務治理的長期效益,以及對企業中長發展的裨益。服務治理收益曲線如圖2 所示。

圖2 服務治理收益曲線
綜上所述,服務治理就是通過對業務的抽象形成業務理想模型,并通過一系列的手段和過程使得真實業務系統向理想模型過渡。
同時,服務治理是一個引導業務系統向理想模型趨近的一種手段和過程。服務治理是SOA 治理中一個重要的組成部分,是一個決策和責任框架,用來鼓勵SOA 化中所期待的行為發生。所以,服務治理的參與者就必須進行各種決策并制訂相應的策略。IT 架構SOA 化就是通過一系列特有的技術,降低了系統故障的風險。ESB 平臺提供的服務調用權重控制、交易流量管理、服務健康檢測、故障隔離、交易監控等行之有效的措施,有效降低了維護、管理的難度[2]。