在 GOTO 2015柏林 大會(huì)上,F(xiàn)red George談了組織應(yīng)該做些什么來實(shí)現(xiàn)微服務(wù)的成功部署以及他們可以在物聯(lián)網(wǎng)領(lǐng)域扮演什么角色。在早些時(shí)候的采訪中,InfoQ就 應(yīng)用微服務(wù)需要哪些支持 采訪了他。在本次采訪中,F(xiàn)red George解釋了物聯(lián)網(wǎng)如何利用微服務(wù)及它所帶來的挑戰(zhàn)和我們可以采取的措施。InfoQ還請他就微服務(wù)在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用向軟件行業(yè)提出了建議。
InfoQ:您能詳細(xì)地描述下物聯(lián)網(wǎng)(IoT)如何應(yīng)用微服務(wù)嗎?
George:單體IT架構(gòu)并不適合其中每個(gè)設(shè)備都有計(jì)算機(jī)和無線連接的環(huán)境。在我家里,我現(xiàn)在有7個(gè)燈泡和10米光條,它們?nèi)加凶约旱奶幚砥?。另外,我還有Apple TV和XBox。在同它們進(jìn)行交互方面,我所希望的方式可能不同于你所希望的方式。這就需要某種程度的解耦(而不是由IBM或Oracle或Google或Amazon或Apple來告訴你應(yīng)該采用什么樣的方式)。因此,我希望設(shè)備可以自己發(fā)布消息,并響應(yīng)其他設(shè)備(或其他人)的操作。我們再次遇到了一個(gè)模糊的問題,一個(gè)適合微服務(wù)的領(lǐng)域。
因此,我設(shè)想,有一個(gè)微服務(wù)可以簡單地指出我是否在家(可以通過我的iPhone及其地理定位服務(wù))。另一個(gè)微服務(wù)對(duì)此作出響應(yīng),并根據(jù)一天中的時(shí)間開燈或關(guān)燈(通過Apple HomeKit及我的Philips Hue控制器)。借助微服務(wù),我可以通過其他的服務(wù)繼續(xù)增加復(fù)雜性,而不需要等著其中某個(gè)大型供應(yīng)商構(gòu)建出一個(gè)具備那種功能的應(yīng)用程序。
InfoQ:您可不可以談一下,根據(jù)您的觀察,物聯(lián)網(wǎng)所面臨的一些挑戰(zhàn)?
George:對(duì)我來說,現(xiàn)在談?wù)撨@個(gè)問題還為時(shí)尚早,不過我馬上就想到了兩點(diǎn)。第一個(gè)是互操作,即如何讓來自不同供應(yīng)商的設(shè)備相互協(xié)作。第二個(gè)是安全,即如何防止懷有惡意的陌生人(或者就我的情況來說,我所熟悉的黑客)對(duì)我家里的系統(tǒng)的訪問。
InfoQ:關(guān)于如何應(yīng)對(duì)這些挑戰(zhàn),您有什么建議嗎?
George:對(duì)于互操作,已經(jīng)出現(xiàn)了幾個(gè)標(biāo)準(zhǔn),而且,主要的供應(yīng)商也已經(jīng)認(rèn)識(shí)到,如果他們的Hub支持多種互操作標(biāo)準(zhǔn),那么與競爭對(duì)手相比,其Hub就更可能被使用。安全問題最好是使用鎖定的無線網(wǎng)絡(luò)來解決,并遵循最佳實(shí)踐來保證其安全。然后,就只需要保護(hù)對(duì)外的“外觀(facade)”免受攻擊。Apple TV、Microsoft XBox及Amazon Echo似乎都在爭當(dāng)那個(gè)外觀。
InfoQ:微服務(wù)是解決互操作的一個(gè)方案嗎?您能舉個(gè)例子嗎?
George:供應(yīng)商們都發(fā)布了他們的協(xié)議,并向各種Hub暴露了API。一個(gè)微服務(wù)可以充當(dāng)不同協(xié)議之間的適配器。它是輕量級(jí)的,并可以隨意取用,這兩個(gè)特性是一個(gè)快速發(fā)展變化的環(huán)境所需要的。正在玩這個(gè)的同行經(jīng)常使用Arduino 處理器板來執(zhí)行這些任務(wù)。最新一代的處理器運(yùn)行現(xiàn)代化的語言,只需很少的電量,而且可以安裝在任何地方。
InfoQ:關(guān)于微服務(wù)在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用,您有什么建議向軟件行業(yè)提嗎?
George:在這個(gè)領(lǐng)域取得成功的供應(yīng)商會(huì)認(rèn)識(shí)到互操作的必要性,而且不是通過在專利產(chǎn)品中逐步增加特性來解決。他們會(huì)開放API,允許同他們的Hub及使用標(biāo)準(zhǔn)協(xié)議(如使用HTTP協(xié)議的RESTful接口)的設(shè)備進(jìn)行多樣化的通信。我期待出現(xiàn)一個(gè)多產(chǎn)的開源模型,就像某些玩具機(jī)器人和無人機(jī)市場那樣。在開放協(xié)議方面占得先機(jī),就會(huì)在市場份額上取得回報(bào)。
最近,Amazon正在努力成為那樣的集成供應(yīng)商(參見 Amazon將在物聯(lián)網(wǎng)領(lǐng)域大展身手 )。Philips剛剛撤回了將外部設(shè)備排除在其Hub之外的決定;這一排外舉措在社區(qū)引發(fā)了激烈的負(fù)面反應(yīng),Philips知道,他們這樣一個(gè)舉措會(huì)讓他們喪失市場份額(參見 Philips Hub重新支持第三方智能燈 )。這個(gè)行業(yè)似乎明白他們需要做什么。