你的互聯網+項目爲何敏捷不起來?五、微服務與業務敏捷、敏捷方法、雲計算、DevOps、SOA之間的因果

微服務其實是與業務敏捷、敏捷方法、雲計算、DevOps、SOA之間存在因與果的規律的。微服務的出現並不是憑空的,而互聯網、電商等業務與技術兩個輪子相互推進的過程中出現的。

首先,隨着互聯網與電商應用的發展,超大併發、高可用的需求催生了單體應用必須向模塊化獨立部署、分佈式架構、集羣與FailOver、雙活、數據分片的方向發展,否則超大併發、高可用的需求無法滿足;另外互聯網與電商、大型企業爲應用對競爭對手的挑戰,都提出了業務敏捷的需求,而業務敏捷、隨需而變的需求,催生了SOA架構、敏捷方法。

在近7、8的時間裏,SOA服務治理,成了各大企業與平臺,應用對業務敏捷需求的重要手段,服務集成、服務編排、ESB逐漸大面積被大型企業採用,SOA的7大特性:業務自包含與模塊化、粗粒度、鬆散藕合、互操作、可尋址、面向流程可分解、位置透明,成了解決大型企業、複雜系統間的面向集成、隨需而變的重要手段。

而互聯網與電商應用,特別是2C的,由於其不可預測的超大併發訪問需求、服務等(SLA)要求,往往引領了高性能、高可用IT技術發展的先導。

雲計算、DevOps於是應運而生。

雲計算是爲了解決超大規模應用的可性能、可維護性、高可用而生的,IaaS是爲了解決底層計算、存儲、網絡的高效管理與調度,PaaS是爲了解決應用的持續集成與交付,SaaS則是一種多租戶互聯網業務模式。而容器技術,包括docker容器的出現和飛速發展,則爲DevOps的實現,奠定了堅實的基礎。

同時,雲計算、CaaS等雲平臺,爲微服務的廣泛應用,提供了堅實的平臺基礎。

本來微服務對於單體應用的細粒度拆分,會帶來大量的負面成本:分佈式事務的致性保證(C),消息集成,應用獨立部署、環境成幾倍甚至幾十倍的增長,運維成本線性增長。

有了雲平臺、CaaS,這些負面成本特別是運維方面的成本可以完全或者部分化解。

呵呵,人類活着就得找點事來不斷在折騰自己、挑戰自己!

模塊化、微服務導致應用拆分,實施團隊拆分變小,敏捷方法得以採用,而DevOps強調一種文化(是不是跟敏捷也強調自己的文化有些相似?):開發與運維的融合,邊界不再清晰,合作、自動化、高效成爲目標,自動伸縮、容器的動態化、Green/Blue rolling成爲標誌。

敏捷方法成功的第一步是什麼?在方案的計劃與初始階段,提供端到端的評估。

微服務成功的第一步是什麼?對端到端業務流程架構的評估。

以上就是這些老肉肉與小鮮肉的前因後果。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章