工業(yè)微服務架構(gòu)為工業(yè)互聯(lián)網(wǎng)平臺的知識轉(zhuǎn)化和復用提供了最佳技術(shù)手段,算法、模型、知識等模塊化組件能夠以“搭積木”的方式被調(diào)用和編排,實現(xiàn)低門檻、高效率的工業(yè)App開發(fā)。
微服務最早由Martin Fowler與James Lewis于2014年共同提出,微服務架構(gòu)風格是一種使用一套小服務來開發(fā)單個應用的方式途徑,每個服務運行在自己的進程中,并使用輕量級機制通信,通常是HTTP API,這些服務基于業(yè)務能力構(gòu)建,并能夠通過自動化部署機制來獨立部署,這些服務使用不同的編程語言實現(xiàn),以及不同數(shù)據(jù)存儲技術(shù),并保持最低限度的集中式管理。
一什么是工業(yè)微服務
工業(yè)微服務是工業(yè)互聯(lián)網(wǎng)平臺的載體,是以單一功能組件為基礎,通過模塊化組合方式實現(xiàn)“松耦合”應用開發(fā)的軟件架構(gòu)。一個微服務就是一個面向單一功能、能夠獨立部署的小型應用,將多個不同功能、相互隔離的微服務按需組合在一起并通過API集實現(xiàn)相互通信,就構(gòu)成了一個功能完整的大型應用系統(tǒng)。以產(chǎn)品生產(chǎn)為例,就可將其拆解為供應鏈管理、設備運行狀態(tài)可視化、生產(chǎn)排程、產(chǎn)線數(shù)據(jù)分析、操作記錄等多個微服務功能模塊。
在工業(yè)互聯(lián)網(wǎng)領域,由于工業(yè)知識繁雜、工業(yè)應用復雜程度高等問題,業(yè)內(nèi)人士普遍認為,使用微服務架構(gòu)將成為開發(fā)工業(yè)APP的主流方式。國外主流的工業(yè)互聯(lián)網(wǎng)平臺,如西門子的Mindsphere、施耐德Eco Struxure等,都通過云平臺支持工業(yè)微服務組件的開發(fā)、部署和管理,從而達到簡化工業(yè)APP開發(fā)的目的。
二工業(yè)微服務架構(gòu)和傳統(tǒng)開發(fā)模式區(qū)別
先來看看傳統(tǒng)的web開發(fā)方式,一般被稱為Monolithic(單體式開發(fā))。所有的功能打包在一個 WAR包里,基本沒有外部依賴(除了容器),部署在一個JEE容器(Tomcat,JBoss,WebLogic)里,包含了 DO/DAO,Service,UI等所有邏輯。
單體架構(gòu)(Monolithic)優(yōu)缺點
微服務架構(gòu)與單體架構(gòu)相比較,微服務架構(gòu)恰恰彌補了單體架構(gòu)的不足,通過有效的拆分應用,實現(xiàn)敏捷開發(fā)和部署:
1、由多個獨立的微服務共同組成系統(tǒng)
2、微服務單獨部署,運行在自己的進程中
3、每個微服務為獨立的業(yè)務開發(fā)
4、分布式管理
5、非常強調(diào)隔離性
關于微服務的一個形象表達:
X軸:運行多個負載均衡器之后的運行實例
Y軸:將應用進一步分解為微服務(分庫)
Z軸:大數(shù)據(jù)量時,將服務分區(qū)(分表)
三工業(yè)微服務架構(gòu)的特點
之所以主流的工業(yè)互聯(lián)網(wǎng)平臺都將微服務架構(gòu)作為開發(fā)工業(yè)APP的主流方式,是因為微服務架構(gòu)與傳統(tǒng)的架構(gòu)相比,具備兩個顯著特點:
1、工業(yè)微服務開發(fā)和維護具有高度靈活性
每個微服務可以由不同團隊運用不同語言和工具進行開發(fā)和維護,任何修改、升級都不會對應用的其他部分功能產(chǎn)生影響;而傳統(tǒng)的統(tǒng)一整體式框架下對軟件的任何修改都有可能對整個應用產(chǎn)生意料之外的影響。
2、工業(yè)微服務運行去中心化分布式執(zhí)行
不同微服務能夠分布式并行執(zhí)行,應用資源占用率相對較小,且微服務間的數(shù)據(jù)和資源相互物理隔離,單個服務的故障只會導致單個功能的受損而不會造成整個應用的崩潰。
四微服務支撐工業(yè)互聯(lián)網(wǎng)平臺顛覆創(chuàng)新
1、工業(yè)微服務顛覆傳統(tǒng)工業(yè)軟件研發(fā)方式
在企業(yè)里,CAD、CAE、DCS、MES、ERP、SCM等傳統(tǒng)工業(yè)應用軟件往往是面向基礎的流程或服務進行設計和研發(fā),并在部署階段根據(jù)用戶實際情況進行調(diào)整,整個軟件研發(fā)的成本投入較大、研發(fā)周期較長,且不能靈活地響應用戶個性化需求。而在工業(yè)互聯(lián)網(wǎng)平臺中,則可采用工業(yè)微服務的方式將上述軟件拆解成獨立的功能模塊,實現(xiàn)對原有生產(chǎn)體系的解構(gòu),隨后在平臺中構(gòu)建起富含各類功能與服務的微服務組件池,并按照實際需求來調(diào)用相應的微服務組件,進行高效率和個性化的面向用戶的工業(yè)App研發(fā),整個軟件研發(fā)的技術(shù)門檻和投入成本大大降低。原來需要專業(yè)團隊和雄厚資金支持的精英化軟件研發(fā)開始向大眾化研發(fā)轉(zhuǎn)變。
2、工業(yè)微服務打破工業(yè)知識封閉傳承體系
過去,工業(yè)領域中很多經(jīng)驗知識都停留在老師傅、老專家的腦子里,由于個人精力和地域空間的限制,這些經(jīng)驗知識通常只能在很小的范圍里發(fā)揮作用,而且還存在易出錯、易流失、難推廣、難傳承等問題。如今,當這些老師傅、老專家將自己的經(jīng)驗知識用軟件代碼的方式固化下來,轉(zhuǎn)化為平臺中的工業(yè)微服務之后,由于平臺所具備的積累沉淀和開放共享特性,這些經(jīng)驗知識就變成了整個企業(yè)、整個行業(yè)的寶貴財富,能夠被更多的人分享學習和使用,創(chuàng)造出更多的價值。同時,新的專業(yè)技術(shù)人員還能夠在充分消化吸收原有知識的基礎上實現(xiàn)進一步提升和創(chuàng)新,推動整個工業(yè)知識體系的傳遞延續(xù)和迭代更新。
3、工業(yè)微服務創(chuàng)造全新平臺開放價值生態(tài)
隨著工業(yè)互聯(lián)網(wǎng)平臺中微服務組件池的構(gòu)建和行業(yè)經(jīng)驗知識的持續(xù)積累,整個平臺既能夠為廣大第三方開發(fā)者提供眾多低門檻、易操作、高效率的開發(fā)支持手段,形成以工業(yè)App開發(fā)為核心的平臺創(chuàng)新生態(tài),也能夠為制造業(yè)用戶提供以工業(yè)微服務為基礎的定制化、高可靠、可擴展工業(yè)App或解決方案,形成以價值挖掘提升為核心的平臺應用生態(tài)。最終,構(gòu)建出以工業(yè)互聯(lián)網(wǎng)平臺為橋梁、以工業(yè)微服務為載體的相互促進、雙向迭代生態(tài)體系。
五工業(yè)微服務在工業(yè)互聯(lián)網(wǎng)平臺的作用
工業(yè)微服務實現(xiàn)機理模型算法的模塊化、軟件化,支撐工業(yè)互聯(lián)網(wǎng)平臺中的工業(yè)App開發(fā)運行。在工業(yè)互聯(lián)網(wǎng)平臺中,工業(yè)微服務正發(fā)揮著承上啟下的關鍵作用。
1、獨立調(diào)試、運行和升級,提升易用性和可維護性
基于不同行業(yè)、不同領域經(jīng)驗知識所提煉出來的各類原始機理算法模型通常缺少對外調(diào)用的接口,也往往難以進行獨立的調(diào)試、運行和升級,需要用工業(yè)微服務的方式將這些機理算法模型集成起來,封裝成可獨立調(diào)試運行的單一功能或服務模塊,提升易用性和可維護性。
2、滿足工業(yè)APP快速運維、持續(xù)迭代和個性化定制的需要
在工業(yè)互聯(lián)網(wǎng)平臺中基于工業(yè)微服務模塊進行工業(yè)App開發(fā),既能夠借助工業(yè)微服務并行開發(fā)、分布運行的特點,有效發(fā)揮平臺海量開發(fā)者接入、資源彈性配置、云化部署運行等優(yōu)勢,又能夠利用工業(yè)微服務獨立隔離、靈活調(diào)用的特點,克服工業(yè)App所面臨的快速運維、持續(xù)迭代、個性化定制等問題。
3、無需專業(yè)知識,平臺調(diào)用工業(yè)微服務開發(fā)工業(yè)APP
工業(yè)互聯(lián)網(wǎng)平臺發(fā)展的核心目標是通過行業(yè)經(jīng)驗知識的積累沉淀和復用推廣來帶動產(chǎn)業(yè)整體水平的提升,并打造繁榮創(chuàng)新的開放價值生態(tài)。而工業(yè)微服務能夠?qū)I(yè)知識和IT技術(shù)融合起來,變成不需要關心實現(xiàn)細節(jié)的“黑盒”,開發(fā)者甚至不需要任何專業(yè)知識,就可通過調(diào)用平臺中各類工業(yè)微服務的方式開發(fā)出解決行業(yè)問題的工業(yè)App。
4、工業(yè)微服務具有通用化共享能力,便于復制和應用推廣
在此基礎上,平臺將原來處于企業(yè)內(nèi)部的封閉性專業(yè)能力轉(zhuǎn)化為面向行業(yè)和社會的通用化共享能力,實現(xiàn)在工業(yè)微服務能力復制和應用推廣,從而成為服務行業(yè)、服務區(qū)域的發(fā)動機和助推器。
六結(jié)語
工業(yè)微服務本質(zhì)是經(jīng)驗知識的軟件化和工具化,借助專業(yè)化的工具打造通用化的平臺。工業(yè)微服務架構(gòu)為工業(yè)互聯(lián)網(wǎng)平臺的知識轉(zhuǎn)化和復用提供了最佳技術(shù)手段,算法、模型、知識等模塊化組件能夠以“搭積木”的方式被調(diào)用和編排,實現(xiàn)低門檻、高效率的工業(yè)App開發(fā),驅(qū)動了工業(yè)軟件開發(fā)方式的變革,促進了平臺創(chuàng)新生態(tài)的形成,工業(yè)微服務能力構(gòu)建已經(jīng)成為當前工業(yè)互聯(lián)網(wǎng)平臺發(fā)展的首要任務。
-
數(shù)據(jù)存儲
+關注
關注
5文章
977瀏覽量
50975 -
工業(yè)互聯(lián)網(wǎng)
關注
28文章
4326瀏覽量
94183
原文標題:工業(yè)微服務實現(xiàn)工業(yè)APP高效開發(fā)和運行
文章出處:【微信號:IndustryIOT,微信公眾號:工業(yè)互聯(lián)網(wǎng)前線】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論