
智能硬件“黃金三角形”
GAgent 在云端所提供的各類型接口能夠讓整個(gè)連接過(guò)程變得更加簡(jiǎn)易,這些接口在傳輸層面支持多種協(xié)議,包括 MQTT,HTTP/S,還有 WebSocket等。MQTT 是由 IBM 最先倡導(dǎo)的一套專門用于物聯(lián)網(wǎng)的協(xié)議,適用于互聯(lián)網(wǎng)這樣網(wǎng)絡(luò)環(huán)境不可靠的場(chǎng)景;同時(shí)它又是基于二進(jìn)制的數(shù)據(jù)格 式,特別適用于硬件上的嵌入式開(kāi)發(fā)。而 HTTP/S 和 WebSocket 則用于一些應(yīng)用的開(kāi)發(fā),如微信的應(yīng)用或者是基于HTML5的應(yīng)用。多樣化的接口能 讓開(kāi)發(fā)者根據(jù)不同的應(yīng)用場(chǎng)景選擇不同的方式。
此外,機(jī)智云還在云端提供了一個(gè)開(kāi)發(fā)者的自助服務(wù)界面,使得我們可以通過(guò)一些簡(jiǎn)單的表單操作就可以完成對(duì)一款新的智能硬件的功能定義。我們會(huì)幫開(kāi)發(fā)者生成一系列包括嵌入式開(kāi)發(fā)的協(xié)議文檔、智能手機(jī)應(yīng)用的 SDK、云端的相關(guān)接口、 還有一個(gè)用于演示產(chǎn)品功能的智能手機(jī)應(yīng)用。另外,我們還提供了一個(gè)運(yùn)行在云端的虛擬設(shè)備,幫助開(kāi)發(fā)者能夠在一行代碼都不用編寫的情況下,測(cè)試自己產(chǎn)品的各項(xiàng)功能。
CSDN:能否介紹您在打造物聯(lián)網(wǎng)和智能硬件平臺(tái)過(guò)程中,主要運(yùn)用的技術(shù)?在平臺(tái)開(kāi)發(fā)過(guò)程中,面臨哪些技術(shù)難點(diǎn)?
劉琰:機(jī)智云在云服務(wù)方面主要用 Python、Ruby 等語(yǔ)言來(lái)開(kāi)發(fā)。數(shù)據(jù)層是機(jī)智云核心,用到 MongoDB、MySQL、Redis 技術(shù);大數(shù)據(jù)領(lǐng)域,用到流式大數(shù)據(jù)處理框架 Spark。在 IaaS 層面,盡量做到服務(wù)供應(yīng)商的中立型,也就是說(shuō)機(jī)智云的整套架構(gòu)部署可以無(wú)縫部署在阿里、騰訊、亞馬遜、微軟等 IaaS 平臺(tái)。
對(duì)于平臺(tái)打造過(guò)程中的通用技術(shù)難點(diǎn),主要就是如何從一個(gè)大的服務(wù)到微服務(wù)轉(zhuǎn)化,這個(gè)過(guò)程花費(fèi)了團(tuán)隊(duì)很大的精力,包括現(xiàn)在還在不斷的去做。這個(gè)很好理解,剛開(kāi)始的時(shí)候,一個(gè)平臺(tái)剛剛起步,一般是一體化的服務(wù),業(yè)務(wù)比較簡(jiǎn)單,但是隨著后期的訪問(wèn)量的增加,業(yè)務(wù)越來(lái)越復(fù)雜,各種各樣的需求會(huì)不斷的疊加進(jìn)來(lái),所以有段時(shí)間,機(jī)智云平臺(tái)自身增加新的業(yè)務(wù)非常困難。因?yàn)槟阋紤]的東西特別多,例如增加新的功能會(huì)不會(huì)影響舊功能的使用等等。
另外,公司人員的增加,如何讓員工快速進(jìn)入開(kāi)發(fā)節(jié)奏,目前機(jī)智云參考 Facebook 的做法,就是將服務(wù)盡量的切小,每一個(gè)服務(wù)負(fù)責(zé)一個(gè)非常單一的功能目的,讓新員工可以在一天之內(nèi)為服務(wù)貢獻(xiàn)代碼。除此之外,機(jī)智云的 SDK、GAgent(WiFi 模塊中的固件程序)或者 GPS、藍(lán)牙通訊模塊里面的代碼程序,需要有一個(gè)合理的發(fā)布節(jié)奏。目前機(jī)智云的云端服務(wù)現(xiàn)在基本上每天可以發(fā)布多次,而客戶端的 SDK/GAgent 等產(chǎn)品則是每月發(fā)布一次,這樣就平衡了功能的演進(jìn)、缺陷的修復(fù)、質(zhì)量的穩(wěn)定等幾個(gè)方面的關(guān)系。
CSDN:您認(rèn)為目前物聯(lián)網(wǎng)主要面臨哪些安全性問(wèn)題?從您的個(gè)人角度來(lái)看,有什么較好的解決方案?
劉琰:物聯(lián)網(wǎng)安全是個(gè)重要話題。物聯(lián)網(wǎng)產(chǎn)品跟手機(jī)/電腦不一樣,沒(méi)有用戶持續(xù)的去管理它的操作系統(tǒng),一方面不太容易發(fā)現(xiàn)被隨隨便便安裝的病毒軟件,同時(shí)也正因?yàn)闆](méi)有用戶每天照看,如果設(shè)備的安全防線被成功擊破,也很不容易被發(fā)現(xiàn)。受制于大部分企業(yè)沒(méi)有完整的技術(shù)開(kāi)發(fā)人員和完善的專業(yè)運(yùn)維和安全團(tuán)隊(duì),現(xiàn)在企業(yè)依托現(xiàn)有工程師自主研發(fā)的產(chǎn)品或多或少都存在一些安全隱患,攻擊者利用這些產(chǎn)品因各種因素制約沒(méi)有考慮到的安全漏洞,可以監(jiān)控或接管這類設(shè)備的運(yùn)作,甚至令其感染惡意程序等,為消費(fèi)者和廠家?guī)?lái)不同程度的困擾和損失。
對(duì)于物聯(lián)網(wǎng)安全,個(gè)人認(rèn)為有六大物聯(lián)網(wǎng)安全的考慮點(diǎn):
網(wǎng)絡(luò)安全。 本地網(wǎng)絡(luò)和數(shù)據(jù)上云管道的安全,思科、華為這些硬件廠家比較擅長(zhǎng)這個(gè)。
安全認(rèn)證。 用戶和設(shè)備的身份和權(quán)限管理,我們這樣的互聯(lián)網(wǎng)公司比較擅長(zhǎng)。
數(shù)據(jù)加密算法。 需要在端部和云端同時(shí)做,需要機(jī)智云這樣的端到端技術(shù)平臺(tái)支持。
PKI。 公鑰基礎(chǔ)設(shè)施,這個(gè)在互聯(lián)網(wǎng)階段就比較成熟,但是應(yīng)用到智能硬件上,很多硬件還沒(méi)用起來(lái)。
持續(xù)的安全數(shù)據(jù)分析。 這個(gè)對(duì)大數(shù)據(jù)能力提出很高要求,也是機(jī)智云在投入端方向,可以通過(guò)數(shù)據(jù)分析防范尚未成功的攻擊。
云端接口的安全保護(hù)。 這個(gè)互聯(lián)網(wǎng)公司比較擅長(zhǎng),我們做云計(jì)算超過(guò)10年,保護(hù)服務(wù)接口是我們的強(qiáng)項(xiàng)。