【導語】 在數(shù)字經(jīng)濟環(huán)境下,云計算、大數(shù)據(jù)、移動社交、物聯(lián)網(wǎng)、人工智能等先進技術的廣泛運用,個人、企業(yè)乃至整個生產(chǎn)體系中的制造資源都實現(xiàn)了廣泛、實時的聯(lián)接,不僅改變了人們的生活方式,而且正在改變商業(yè)本質。
在數(shù)字經(jīng)濟環(huán)境下,云計算、大數(shù)據(jù)、移動社交、物聯(lián)網(wǎng)、人工智能等先進技術的廣泛運用,個人、企業(yè)乃至整個生產(chǎn)體系中的制造資源都實現(xiàn)了廣泛、實時的聯(lián)接,不僅改變了人們的生活方式,而且正在改變商業(yè)本質。數(shù)字化轉型是所有企業(yè)的必然選擇,企業(yè)開展數(shù)字化轉型的目的就是要更好地為用戶創(chuàng)造價值,以實現(xiàn)最佳的客戶體驗為目標,顛覆性的改變企業(yè)產(chǎn)品實現(xiàn)和交付的生產(chǎn)活動過程。通過對產(chǎn)品相關活動中的用戶數(shù)據(jù)洞察,系統(tǒng)化進行知識沉淀和傳承,改善產(chǎn)品的數(shù)字化設計能力及服務水平,優(yōu)化產(chǎn)品的交付機制,從而滿足客戶的個性化體驗。
而這一切的業(yè)務活動中,在產(chǎn)品的需求產(chǎn)生直至產(chǎn)品實現(xiàn)交付的完整商業(yè)實現(xiàn)過程,數(shù)據(jù)實現(xiàn)有效、連續(xù)和閉環(huán)的傳遞,產(chǎn)品設計、制造乃至整個供應鏈的資源實現(xiàn)密切的協(xié)同,工業(yè)互聯(lián)網(wǎng)平臺是面向制造業(yè)數(shù)字化、網(wǎng)絡化智能化需求,構建基于海量數(shù)據(jù)的采集、匯聚分析和服務體系支撐制造資源泛在連接、彈性供給、高效配置的開放式工業(yè)互聯(lián)網(wǎng)平臺。
GE首席技術官Dave Bartlett認為工業(yè)互聯(lián)網(wǎng)平臺本質是一個工業(yè)操作系統(tǒng)其功能類似微軟的Windows、谷歌的安卓系統(tǒng)或者蘋果的iOS系統(tǒng)。就像以上所談到的電腦或手機操作系統(tǒng)一樣,工業(yè)操作系統(tǒng)層實現(xiàn)了工業(yè)現(xiàn)場各種復雜設備或控制邏輯的抽象,標準化了不同廠商產(chǎn)品的接口差異,實現(xiàn)了不同的協(xié)議轉換,以底層API的形式給架構其中的PaaS平臺層進行調(diào)用,以微服務的形式提供預制化的構件,從而在應用層快速地利用構件進行服務編排,實現(xiàn)復雜的用戶應用需求。
微服務(Microservices)架構
過去的企業(yè)軟件多是按管理域劃分的大軟件,如ERP、PLM、SCM等等,這些軟件往往模塊眾多,功能復雜,強調(diào)以自身管理視角的產(chǎn)品全生命周期協(xié)同工作。但在數(shù)字化轉型的背景驅動下,面對批量較小的產(chǎn)品訂單,更加個性化、人性化的產(chǎn)品特性組合,工作業(yè)務流程從長流程變成短流程,鼠標點擊變成手指觸屏,線性協(xié)作變成點狀聚合,大軟件系統(tǒng)不得不適應而被拆解為更小功能服務的小軟件服務。
互聯(lián)網(wǎng)需求的長尾效應推動軟件碎片化,讓工作無時無處都可以被處理,而越來越多的碎片化的需求又進一步反身強化更多智能設備的推廣使用。應用交付的速度永遠跟不上業(yè)務需求的變化,業(yè)務部署與運維復雜度提高導致應用的可用性下降,多元化業(yè)務和復雜體系架構導致IT治理的困難,技術人員不斷的重復 “開發(fā)—測試—上線”的輪回。
ThoughtWorks首席科學家Martin Fowler在2014年提出了微服務的概念,把一個大型的應用軟件按照功能和服務分類拆分為數(shù)十個微服務,每個服務運用于自己的獨立進程,通常是采用基于HTTP協(xié)議的RESTful API的輕量級通信機制,松耦合的服務能夠被獨立更新的部署,每一個微服務可滿足用戶的一個需求,用來提升企業(yè)的敏捷運營與快速的業(yè)務拓展。這種架構將原本大而復雜的單體架構,重組為小而精美的獨立服務,讓工作變得更加高效、便捷、直擊重點。
當企業(yè)對某些微服務有特殊需要時,只需將針對這部分微服務的IT資源進行升級,對這些微服務進行更新。在系統(tǒng)出現(xiàn)故障時,微服務也可實現(xiàn)對故障部分單獨隔離,以免影響到整個系統(tǒng)的使用。開發(fā)人員也可更便捷地基于“云”進行應用系統(tǒng)開發(fā)。
容器(Container)技術
傳統(tǒng)軟件架構特性是單體應用,開發(fā)周期至少以月為單位進行發(fā)布和升級,代碼一般使用一種語言開發(fā),不同的組件緊耦合,經(jīng)常依賴于公共的庫,部署周期以月為單位,部署依賴人工操作,組件版本復雜,操作風險高,時間管理成本均居高不下。以JAVA應用為代表的三層架構的部署模式,即便是在虛擬機環(huán)境發(fā)布環(huán)境,也是需要建立相應的操作系統(tǒng)和應用服務器,以完全虛擬應用的運行環(huán)境。
容器的代表性產(chǎn)品Docker的出現(xiàn)是一個標志性的節(jié)點,2013年首次提出了Build→Ship→Run的概念,使用鏡像方式能夠將應用程序和它依賴的操作系統(tǒng)、類庫以及運行時環(huán)境整體打包,統(tǒng)一交付,消除了對傳統(tǒng)應用對操作系統(tǒng)、應用服務器不同廠商及版本,甚至對于環(huán)境變量、基礎函數(shù)庫API調(diào)用的深度依賴,因此容器的本質是一種操作系統(tǒng)級別的虛擬化,與底層所使用的平臺無關,容器可以在與主流的Windows、Linux等主流的操作系統(tǒng)上運行,意味著應用架構一旦轉換為容器化并且遷移部署之后,就可以在任何云平臺之間無縫遷移。使用容器能夠利用鏡像快速部署運行服務,能夠實現(xiàn)業(yè)務的快速交付,縮短業(yè)務的上線周期,極大地方便運維人員的上線部署工作。
容器較傳統(tǒng)虛擬化有更低資源使用粒度,在一臺物理機上可運行上百個容器服務,從而提高服務器硬件資源的利用率。當遇到高并發(fā)、高流量的大活動,容器做到根據(jù)業(yè)務的負載進行彈性擴容,以提供更好的服務。當訪問量降低后,容器平臺能夠自動縮容,及時釋放空閑資源。
開發(fā)運維平臺(DevOps)
DevOps概念早先始于2009年的歐洲,因傳統(tǒng)開發(fā)和運維模式無法實現(xiàn)用戶應用快速變化且生命周期較短的現(xiàn)實。DevOps一詞的來自于Development和Operations的組合,突出重視軟件開發(fā)人員和運維人員的溝通合作,通過自動化流程來使得軟件構建、測試、發(fā)布更加快捷、頻繁和可靠。早期時,大家雖然意識到了這個問題的,但是苦于當時沒有完善豐富的技術工具,是一種“理想很豐滿,現(xiàn)實很骨感”的情況。早期的PaaS平臺方案初步解決了很多客戶對于應用彈性的需求,但是在容器技術之前,構建一套PaaS平臺面臨著組件多、量級大、改造成本高等挑戰(zhàn),而且對于運行在不同 PaaS 平臺上的應用,很難避免應用對平臺的深度依賴。
譬如,不同的PaaS平臺對彈性、高可用、性能、監(jiān)控、日志、版本更新等的實現(xiàn)方式不同,則對其上應用的架構要求也不同;另外,在編程語言和平臺層的API調(diào)用方面,也會導致應用對平臺廠商的深度綁定。以Docker為代表的輕量級虛擬化容器技術的發(fā)展使得DevOps成為可能,工業(yè)互聯(lián)網(wǎng)的應用直接構建在以Cloud Foundry、Kubernetes等為代表的PaaS平臺之上。
工業(yè)APP的構建是核心
工業(yè) APP 的構建是在互聯(lián)網(wǎng)制造背景制造協(xié)作模式轉換的核心,其關注對工業(yè)技術知識的提煉與抽象,將數(shù)據(jù)模型、提煉與抽象的知識結果通過形式化封裝與固化形成 APP。封裝了工業(yè)知識的工業(yè) APP, 對人和機器快速高效賦能,突破了知識應用對人腦和人體所在時空的限制,最終直接驅動工業(yè)設備及工業(yè)業(yè)務。
基于容器技術和微服務架構的PaaS平臺,成功地實現(xiàn)了DevOps的開發(fā)運維一體化的愿景,借助于工業(yè)互聯(lián)網(wǎng)平臺敏捷架構,服務組件供應商、工業(yè)制造商、終端用戶甚至個體團隊的形成了完整的工業(yè)App開發(fā)、應用生態(tài),推動以互聯(lián)網(wǎng)為協(xié)作載體的新一輪專業(yè)分工,將原來在企業(yè)各工程人員、專家頭腦中隱性、分散的工業(yè)技術知識、經(jīng)驗技巧進行模型化、軟件化和商品化,形成標準化的微服務組件。
無論工業(yè)APP團隊的規(guī)?;驅嵙Φ拇笮?,都可以使用工業(yè)互聯(lián)平臺上提供的標準化的微服務組件,以即插即用的方式組裝成適合用戶特定工業(yè)環(huán)境需求的工業(yè)APP,從而促進工業(yè)knowhow的知識沉淀,以商業(yè)化的方式實現(xiàn)跨行業(yè)、跨企業(yè)的專業(yè)化傳播與復用,從而實現(xiàn)全社會工業(yè)能力的整體提升。