微服務(wù)出現(xiàn)的時間不短了,但是為什么現(xiàn)在才這么重視它?互聯(lián)網(wǎng)轉(zhuǎn)型要轉(zhuǎn)型什么?
第一,以職能為中心轉(zhuǎn)向以用戶為中心。我們過去的信息化更多的是依照部門職能,有什么樣的工作內(nèi)容,有什么樣的流程,然后去做系統(tǒng)。下一步的信息化更多的是以用戶為中心。為什么是以用戶為中心?我們要看用戶到底需要什么,在什么樣的場景下需要什么樣的信息支持。過去我們只在內(nèi)部做很多系統(tǒng),其實用戶體驗也非常的不好,用戶需要的東西也沒有。
第二,從流程驅(qū)動轉(zhuǎn)向數(shù)據(jù)驅(qū)動。過去都是看業(yè)務(wù)流程是什么樣的,流程中間需要什么樣的數(shù)據(jù)來支持。隨著移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)這些數(shù)據(jù)的產(chǎn)生,根據(jù)數(shù)據(jù)的分析判斷或者驅(qū)動新的流程,所以新的應(yīng)用場景是由數(shù)據(jù)來驅(qū)動的。
第三,從事后錄單轉(zhuǎn)向現(xiàn)場數(shù)據(jù)自動采集。過去的信息化都是靠人工輸入,發(fā)生的業(yè)務(wù)就輸入一些信息進去。今后由于移動互聯(lián)網(wǎng)和物聯(lián)網(wǎng)實時數(shù)據(jù)的采集,我們做好實時的在現(xiàn)場的采集,反而不需要人工做采集、手工錄入。
第四,從封閉系統(tǒng)轉(zhuǎn)向開放系統(tǒng)。過去的系統(tǒng)都是封閉式的,開發(fā)它的時候沒有考慮到開放、沒有考慮到互聯(lián)或者被誰調(diào)用。今后的系統(tǒng)開發(fā)出來,應(yīng)該是微服務(wù)的方式,它是暴露API,某個系統(tǒng)不需要知道被誰調(diào)用、被調(diào)用多少次,該系統(tǒng)在開發(fā)時就做到是一個開放的系統(tǒng),暴露API。
第五,從單機架構(gòu)轉(zhuǎn)向分布式架構(gòu)??傮w來講,過去的信息化都是基于單機的架構(gòu),俗稱叫IOE架構(gòu),在單機上做的整個基礎(chǔ)設(shè)施,包括上面的應(yīng)用、數(shù)據(jù)庫都是基于IOE結(jié)構(gòu)寫的,下一步要轉(zhuǎn)向分布式。分布式是從基礎(chǔ)設(shè)施一直到應(yīng)用都要做到分布式。為什么要轉(zhuǎn)向分布式?是因為要做到彈性可擴展,滿足大量的并發(fā)、交互和大的用戶量和數(shù)據(jù)量。
第六,從中心化治理轉(zhuǎn)向去中心化自治。過去的信息化走到今天,到SOA這樣一個階段大家知道仍是中心化治理的階段,依靠總線來做交互、路由;下一步在微服務(wù)的模式下是事件的驅(qū)動,服務(wù)之間他們?nèi)绾稳ケ徽{(diào)用、如何去走流程是通過事件驅(qū)動的,而不是中心化的思路做治理,更多的是去中心化的自治。
舉例:美國GE說,GE未來是一個軟件企業(yè),為什么?因為所有一切是被軟件所定義,背后是云平臺、大數(shù)據(jù)平臺的支撐。GE打造的工業(yè)互聯(lián)網(wǎng)平臺:前端通過連接所有的設(shè)備、資產(chǎn),端到端所有跨業(yè)務(wù)流程的,包括合作伙伴、客戶所有這些東西都通過云平臺的連接,設(shè)備產(chǎn)生的數(shù)據(jù)、產(chǎn)品的數(shù)據(jù)都基于云方式存儲。在云上,有了數(shù)據(jù),數(shù)據(jù)驅(qū)動各種創(chuàng)新的應(yīng)用,通過融合分析可以得出很多的洞察,包括設(shè)備的可預(yù)測性維護等等。這個工業(yè)互聯(lián)網(wǎng)平臺底層就是PaaS和IaaS,上面就是微服務(wù)的架構(gòu)。整個應(yīng)用架構(gòu)是朝微服務(wù)的方式轉(zhuǎn)型,不管是對資產(chǎn)的,就是設(shè)備、裝備還有各種分析的服務(wù)、數(shù)據(jù)存儲服務(wù)、安全服務(wù)、運營服務(wù)都是基于這樣一個平臺在打造下一代微服務(wù)的架構(gòu)、微服務(wù)的應(yīng)用。數(shù)據(jù)架構(gòu)方面從融合的大數(shù)據(jù)架構(gòu)轉(zhuǎn)型。通過物聯(lián)感知,各種各樣的數(shù)據(jù)在產(chǎn)生,這些數(shù)據(jù)通過數(shù)據(jù)的管道結(jié)構(gòu)化,這些結(jié)構(gòu)化的數(shù)據(jù)怎么存儲、非結(jié)構(gòu)的數(shù)據(jù)怎么存儲,對于需要實時處理的數(shù)據(jù)怎么存儲計算,對于一些不需要實時處理的數(shù)據(jù)怎么存儲,這里面會進入到一個融合的大數(shù)據(jù)的架構(gòu)基礎(chǔ)上去做數(shù)據(jù)的存儲和計算。有了數(shù)據(jù)的基礎(chǔ)上我們再做一些分析和利用,支持或是引導(dǎo)業(yè)務(wù)變革和創(chuàng)新。
從以上互聯(lián)網(wǎng)轉(zhuǎn)型我們就可以看到為什么需要微服務(wù)的架構(gòu):
第一,快速的創(chuàng)新。在互聯(lián)網(wǎng)時代我們需要快速的創(chuàng)新。不像過去,我們做一個系統(tǒng)花了很長時間,半年甚至一年實施出來,為時晚矣。信息時代,我們需要快速的響應(yīng)和交付。
第二,隨時隨地的服務(wù)需要隨時的連接。
第三,網(wǎng)絡(luò)的規(guī)模。也就是說我們的服務(wù),我們可能隨時要被大量的人訪問、數(shù)據(jù)隨時大量的產(chǎn)生,這樣一種大量數(shù)據(jù)的產(chǎn)生、大量用戶訪問的規(guī)模也需要有一種新的彈性架構(gòu)支撐它。
第四,以移動為中心的用戶體驗。所有這些導(dǎo)致我們要基于微服務(wù)架構(gòu)構(gòu)建一種原生的云應(yīng)用。所謂原生的云應(yīng)用,就是在互聯(lián)網(wǎng)的基礎(chǔ)平臺上基于微服務(wù)架構(gòu)開發(fā)的應(yīng)用,它是彈性可擴展的,可以支持大并發(fā)大交互。
總之,未來業(yè)務(wù)的敏捷一定要依賴于IT的敏捷,我們一直追求敏捷的IT:一個彈性可擴展的云計算與大數(shù)據(jù)基礎(chǔ)平臺(IaaS + PaaS),加上基于微服務(wù)架構(gòu)的原生云應(yīng)用(SaaS)開發(fā),這已成為企業(yè)級IT的必然選擇!
北達軟信息化咨詢與培訓(xùn)中心(國家信息資源管理北京研究基地)是一家專注于EA研究、咨詢和培訓(xùn)的服務(wù)機構(gòu)。成立于2006年,注冊在北京大學(xué)科技園,通過了ISO9001質(zhì)量體系認(rèn)證。北達軟最早將TOGAF、FEA、ESA和Archimate等企業(yè)架構(gòu)認(rèn)證培訓(xùn)引入中國。通過將EA與云計算、大數(shù)據(jù)、物聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)等新IT技術(shù)的結(jié)合,北達軟已形成一套完善的新IT架構(gòu)或互聯(lián)網(wǎng)架構(gòu)設(shè)計與轉(zhuǎn)型方法論。