文/張百靈
挖掘快速交付的技術核心看傳統應用如何輕松上云
文/張百靈
近年來,互聯網企業一直作為新技術的探索者和創新者,隨著開源技術的不斷發展,整體IT架構出現了根本性的變革,秒級部署、每日上線等交付方式已經形成新常態,這讓很多傳統企業羨慕不已,也想通過技術變革獲取IT敏捷、快速交付能力。
隨著云計算、容器技術、微服務架構、敏捷交付、持續集成等相關概念和技術的逐步成熟,云應用早已不是互聯網企業所獨享的技術優勢,很多傳統企業受到互聯網思維模式的啟發,紛紛邁出了上云的第一步,并且開始收獲新技術帶來的諸多成效。
本文將對糧食這樣一個關系國家民生基礎工程的典型傳統行業,如何利用云計算技術徹底改變傳統交付模式,以技術推動變革,用變革提升效率,大幅釋放生產力的案例進行分析和探討。
怡和祥云的交付團隊可以在6~7天交付出一個可以供用戶使用的用戶程序APP,65天交付上線一套智慧倉庫系統,這樣的速度是否有些匪夷所思?把交付過程拆解來看,不難看發現交付過程的每一個階段都可以按天甚至按分鐘記錄,見表1。那么如此驚人的速度是如何練就的呢?

表1 某APP交付各階段時間表
步驟1:換個角度看業務,一切皆“服務”
傳統應用上云的第一步是將一個完整的業務場景,通過“解耦”的視角進行服務化。從云端看業務時,一切業務場景都是由“微服務”構成的,一切業務場景全都可以通過微服務來進行定義。
業務視角:以某省儲備糧的糧庫管理為案例,在一座糧倉里面,為保證糧食存儲期間的安全,以及保證能夠追溯糧食流通過程,主要涉及以下幾個方面:
貨位監控:備案倉內糧食信息,并生成庫存識別碼;
視頻監控:通過攝像頭實時監控倉內情況;
環境監控:對倉內溫度、濕度和氣體成分進行監控;
蟲害監控:自動監測倉內糧食的蟲害情況。
服務視角:怡和祥云打破以往的項目模式,將糧庫管理這一業務場景細化為10個獨立的過程,分別對應一個微服務,由微服務拼裝成智能倉庫系統,如圖1、2所示。
由此看見,在云上看業務時,所有業務都是由獨立的微服務拼裝組合而成,IT交付過程從傳統的流水線式交付可以輕松變為獨立的車輪,不再互相制約,加速交付速度。
步驟2:重塑組織形態,構建小而美的微型團隊
雖然從交付模式說起,但是依據“康威定律”,可以發現交付模式其實是一個組織溝通形式的反應。因此要想具備上述微服務的“眼睛”,必然要具備微服務的“大腦”,即組織形態在微服務架構下必然要進行重塑。
組織形態由以項目為核心轉化為以微服務產品為核心,由大組織的集中管理變為小組織的自治管理,更加敏捷而靈活,如圖3所示。在智能倉庫系統的開發過程中,正式采用了上述微服務架構下的組織形態,6~7天即可上線一個業務完整的小程序。
步驟3:轉化交付思維,以“快”應“變”是云端的交付思維模式
在應用設計時,以微服務架構進行應用開發設計,秉承“項目不停、需求不斷;持續迭代、持續交付”的原則,保證應用快速落地和持續優化。業務活動轉化為功能應用過程示意圖如圖4所示。每個微服務都是一個獨立的業務,業務人員(微服務產品經理)可隨時提出需求變更,對微服務進行迭代,保證了業務流程的充分靈活性。

圖1 以業務視角看業務

圖2 以微服務視角看業務

圖3 重塑組織形態

圖4 持續交付-應用設計原則

圖5 快速交付能力的核心技術
為實現敏捷、快速交付能力,其背后強大的核心技術是關鍵,如圖5所示。下面我們將逐條解讀快速交付背后的核心技術。
資源虛擬化能力:基礎設施和技術資源全面云化,以服務的形式按需開通,根據負載隨需擴展,實時獲取業務變化,并對此作出響應,提高了資源利用率和開發效率。
分布式環境的開通和管理能力:微服務架構下,每個業務單元可以獨立運行與管理,保證了高可用性。
DevOps自動化作業能力:通過工具集成與平臺化管理手段,形成自動化持續交付流水線,將開發和運維融為一體,加快業務響應速度,提高交付質量。
重塑組織架構的能力:打破以往的開發形式,重構人員組織,組建微服務團隊,由微服務團隊對服務的整個生命周期負責,團隊自治,提高了開發效率。
為保證應用具備云原生應用的特點,在應用架構設計、開發管理過程中,要嚴格對標原生云應用12 factor,這樣能夠輕松實現業務縱向擴展或資源水平擴展。此外,還能實現由平臺負責處理復雜、重復的事情,使開發人員更加專注于業務應用的創新。怡和祥云在產品研發過程中,對原生云應用12factor的落地工作見表2。
怡和祥云在糧食信息化建設過程中,緊密貼合糧食業務需求,以OpenBridge平臺為支撐,全面釋放糧食業務價值,實現了對糧食信息化的顛覆,為糧食信息化的標準化奠定了堅實基礎。在未來的發展中,怡和祥云將繼續嚴格對標云原生應用的12要素,全面提高應用的交付速度,助力更多傳統企業快速上云。

表2 原生云應用12 factor對標實踐
作者單位:怡和祥云(北京)科技有限公司