作者│趙世峰
借力互聯網技術實現傳統企業IT架構互聯網化升級
作者│趙世峰
隨著云計算、敏捷開發等的廣泛應用,傳統企業IT架構借力互聯網技術向開放平臺轉型,已成為CIO的一個重要話題。

圖1 以微服務為基礎的IT開放平臺生態系統
IT系統架構設計是IT領域經久不衰的話題之一,它決定了IT系統能否被正確有效地構建、能否滿足業務需要。
筆者所在的C集團是一家為運營商提供通信服務的企業,公司治理模式是典型的“小總部”戰略及財務管理型,設置有總部、省和專業公司三級架構,業務分布于全國,且類型復雜多樣。之前各省建設的松散系統暴露出諸多的問題,主要為:第一,管理落地困難。各省自建系統缺乏統一的系統架構,難以落實總部的全面管控要求。第二,技術繁雜,用戶體驗差。隨著業務需求的多樣化,當初看似高效的開發方式及系統架構反而成了系統集成、升級的瓶頸。第三,建設和維護費用高。全國所有系統每年的建設和維護費用驚人。
筆者認為IT系統架構設計的本質是在企業內部找到動態平衡:平衡業務、技術、團隊的同時,還要考慮系統的靈活性、可擴展性及可維護性等因素,充分利用遺留系統,新、舊系統融合演進。
C集團曾考慮使用成熟的套裝軟件,但存在以下問題:一是需要大量的二次開發工作;二是用戶量大,套裝軟件的授權費和服務費昂貴;三是界面復雜,勞動密集型企業員工電腦操作難度大,培訓成本高。
為此,C集團決定自建企業IT架構,參考BAT的體系架構,以“圍繞業務構建開源微服務分布式系統”為理念建設“翔云”平臺,寓意借助云計算實現IT建設的騰飛。
C集團以微服務為基礎的IT開放平臺生態系統(圖1),將工程、設計、監理和運維四大類的業務形態抽象為合同、項目、采購、銷售、財務、客商和市場七大類微服務。開發人員通過調用這些微服務,實現業務的快捷組裝。下面就幾個關鍵點進行說明:
綜合灌漿法:鉆機對中調平固定→開孔鉆至第一段→阻塞洗孔、壓水及灌漿→鉆至終孔段→一次性洗孔、壓水→自下而上分段灌漿至第二段→封孔。
1. 微服務的識別
很多人會問:業務復雜,怎樣合理拆分微服務?個人認為,初始階段不必糾結于此問題,要在實施過程中不斷尋找業務拆分顆粒度與IT架構設計的平衡點。
最初,我們將C集團的業務拆分為417個微服務,后來的實施過程中發現拆分得太細,一是業務的管理顆粒度達不到如此細化,太多的能力預留是一種浪費;二是服務間的交互成本過高。最后調整為306個,將這套體系命名為“業務HUB”(圖2),各功能都可以在該平臺上集成。
服務管理平臺層把核心業務模塊化、服務化為原子服務。圖中服務工廠,用一堆相同的幾何形狀小塊表示其獨立性。業務流程平臺層通過原子服務和業務邏輯的組合來完成服務。
技術選型堅持了基于開源軟件的分層架構,基于互聯網部署,在保障安全的前提下廢除了VPN和USB密鑰,節約成本。
翔云項目以微服務思想為指導,采用Spring+SpringMVC框架實現組件解耦、敏捷迭代。采用主流的成熟框架,各種參考資料眾多,有利組建開發團隊。
2. 微服務的管理
微服務架構采用Dubbo+Zookeeper實現服務的分布式管理與調度。
翔云項目目前實現了對C集團所有微服務資產的管理,后續將按照DevOps思想實現整個開發運維的自動化(圖3)。
· 服務注冊管理:對自有或第三方開發的服務接入平臺進行統一管理。
· 服務版本管理:差異化支持管理服務的多個版本。
· 服務權限管理:支持對服務權限的配置與審批流程。
· 服務監控管理:支持對服務運行狀態進行全方位監控。

圖2 業務HUB與SAP示意圖

圖3 服務管理平臺示意圖
3. 微服務與ESB并存
微服務架構本質上是服務總線ESB,那么微服務的分布式管理與ESB是什么關系?簡而言之,ESB負責系統間的信息交互,微服務分布式服務管理負責系統內部的信息交互。
C集團的一期系統采用SAP PI作為企業服務總線ESB,二期繼續沿用作為API Gateway層,新建的翔云項目管理系統通過ESB對接財務系統,系統內部通過Dubbo+Zookeeper進行分布式服務管理(圖4)。隨著遺留系統逐步退役,C集團將完全過渡到去中心化、分布式的IT架構上。這也印證了:企業IT系統架構設計的本質是在企業內部找到動態平衡。
4. 虛擬機和容器
翔云一期項目在內蒙古建立了虛擬機資源池,從而保障了翔云二期項目微服務架構體系的建立。并且,我們在開發和測試環境已嘗試使用Docker。
翔云二期項目將項目管理的306個微服務打包為15個微應用獨立部署,用極低的成本支撐了全國20多個省的業務運營。
5. 開發和運維團隊
專業化的隊伍是快速迭代實施和優化的保證。翔云項目建設時,并沒有花大力氣關注微服務如何拆分,而是聚焦于生態系統的搭建以及團隊文化的培養,翔云項目采用了“項目前期外部實施單位挑大梁,內部單位支撐;后期內部單位打主力,外部教官指點”的做法。
通過內外協同合作的方式,3個月分析業務,4個月開發,2個月測試,一個400萬行代碼的系統成功上線,實現了“所有數據進系
統、精細核算、業財一致”的目標。
綜上,從IT建設的目標來看,翔云項目低投入、高產出,并且打造了新的集團企業IT應用建設模式,其特點總結為24個字:
厚平臺,微應用
松耦合,插件化
界面優,集中維
開源化,易接入
通過翔云項目的實施,筆者更加深刻地認識到IT架構的設計是一個長期而不斷優化的過程,重要的不是技術平臺而是人。
最后,感謝長期以來為C集團信息化建設做出貢獻的埃森哲公司,正是他們的努力與付出,幫助企業實現了從傳統企業IT架構向互聯網化破繭成蝶的轉變!
編輯|趙艷薇 zhaoyanwei@bjxintong.com.cn

圖4 ESB負責系統間的信息交互示意圖