隨著互聯(lián)網(wǎng)應用的發(fā)展,在敏捷快速迭代、高可用、高性能、高并發(fā)等方面要求越來越高,傳統(tǒng)的SOA分布式架構并不適合這種場景,互聯(lián)網(wǎng)最新流行且最佳的實踐方式就是微服務化(Micro Service)。
企業(yè)在思考業(yè)務流程平臺架構的時候,通常普遍采用的解決方案思路如:應對性能的增長——負載均衡;應對頻繁的需求調(diào)整 ——增加人手、并行迭代;應對業(yè)務差異 ——另開版本、獨立維護。這些解決方案之所以可行或者說一開始問題并不明顯,是因為忽略了量,量變引起質(zhì)變。
圖1 集中式、分布式、微服務架構
上圖是三種架構(集中式、分布式、微服務架構)的形象化展示??梢钥吹轿⒎占軜嬒啾戎赂鼮閺碗s,如果還按照以前“項目式”管理方式維護的話,工作量會成指數(shù)級增長,無疑是人力所無法勝任的工作。
微服務架構目的是通過業(yè)務拆分來降低系統(tǒng)的復雜性;通過服務共享來提供可重用性;通過服務化來達到業(yè)務支持的敏捷性;通過統(tǒng)一的數(shù)據(jù)架構來消除數(shù)據(jù)交互的屏障。而微服務的應用致力于松耦合和高內(nèi)聚:采用單獨的業(yè)務邏輯封裝,接受請求、處理業(yè)務邏輯、返回響應,最終實現(xiàn)敏捷開發(fā)。
微服務不是“免費的午餐”,當越來越多人意識到微服務架構給業(yè)務響應和創(chuàng)新帶來高效助推能力的時候,也需要深刻了解微服務架構建設中和建設后所將面臨的一系列問題,也意味著企業(yè)需要一個專業(yè)的團隊和平臺來保障微服務架構的成功落地。
反觀K2 BPM流程五大要素由原來依賴于流程引擎的“中心化”模式,逐漸轉變?yōu)榱鞒桃妗⒈韱我妗⒁?guī)則引擎、主數(shù)據(jù)引擎、接口引擎可獨立運轉的“去中心化”模式,本質(zhì)上也是微服務架構建設的過程,這不僅僅是技術上的改變,也是K2通過多年的客戶最佳實踐和業(yè)務不斷磨合、演變的結果。
圖2 流程五大要素演變過程
K2很早以前就已經(jīng)開始為企業(yè)在服務化轉型過程中將面臨的組織間業(yè)務協(xié)作、業(yè)務核心能力的沉淀等方面都做了很好的實踐和經(jīng)驗沉淀,并總結出理想的業(yè)務流程平臺設計核心思路:彈性性能、敏捷迭代、充分解耦、業(yè)務主導、復用與沉淀、試錯與創(chuàng)新。
在K2引擎的驅動下,以流程服務為特色的PaaS平臺 —— Nebulogy應運而生。
Nebulogy平臺提供兩個層次的服務能力,一個是底層PaaS的能力,PaaS層解決大型架構在分布式、可靠性、可用性、容錯、監(jiān)控以及運維層面上的通用需求,連接平臺與服務;Nebulogy遵循云原生十二要素,可無縫融入企業(yè)自身PaaS平臺,促進企業(yè)級PaaS平臺應用落地能力,助力企業(yè)真正實現(xiàn)應用云化、業(yè)務互聯(lián)網(wǎng)化。
第二個是業(yè)務服務能力,基于微服務架構對BPM平臺類應用進行充分解耦,靈活組裝特定業(yè)務應用場景;提供針對流程全生命周期管理、應用開發(fā)及運維服務,進而提供云化的核心業(yè)務支撐能力,連接人和組織;Nebulogy集成DevOps工具,實現(xiàn)基于云的流程開發(fā)、測試、部署及運維自動化,讓平臺擁有更好的敏捷迭代能力,真正支撐上層業(yè)務達到敏捷、穩(wěn)定和高效。
服務能力的沉淀和體現(xiàn)的業(yè)務價值是完全成正比的,而服務能力的沉淀需要不斷的業(yè)務滋養(yǎng),只有在滋養(yǎng)中才能從最初僅提供單薄業(yè)務功能的服務逐漸成長為企業(yè)最為寶貴的IT資產(chǎn),服務所需的滋養(yǎng)正是來自新的業(yè)務不斷進行服務的接入,為原有服務能夠變得更加專業(yè)和穩(wěn)定帶來急需的需求養(yǎng)分。
通過服務能力在業(yè)務發(fā)展過程中的不斷沉淀,當業(yè)務的能力沉淀到一個階段后,才能真正感受到微服務架構給企業(yè)的業(yè)務發(fā)展帶來的長遠價值。
我們將與國內(nèi)外的云計算領先廠商、行業(yè)標桿客戶、綜合ISV、渠道伙伴、開源社區(qū)、產(chǎn)業(yè)聯(lián)盟等形成生態(tài)聯(lián)盟伙伴關系,從業(yè)務創(chuàng)新、技術支持、解決方案、培訓認證、項目協(xié)作等方面展開緊密合作,打造基于流程服務為特色,支撐業(yè)務創(chuàng)新和變化的企業(yè)級PaaS平臺。
我們同樣期待借助Nebulogy平臺給企業(yè)帶來業(yè)務高速發(fā)展的翅膀,真正讓企業(yè)的業(yè)務發(fā)展飛得更快、更遠。