克服物聯(lián)網(wǎng)可擴(kuò)展性問(wèn)題的三個(gè)技巧
事實(shí)表明,開(kāi)發(fā)人員應(yīng)該從小處著手,使用簡(jiǎn)單的架構(gòu),并結(jié)合分散的應(yīng)用程序支持物聯(lián)網(wǎng)平臺(tái)。
在技術(shù)項(xiàng)目中要考慮的最重要方面之一是可擴(kuò)展性,物聯(lián)網(wǎng)也不例外。事實(shí)上,如果已經(jīng)知道采用的物聯(lián)網(wǎng)解決方案將不斷添加更多設(shè)備,并需要處理越來(lái)越多的數(shù)據(jù),那么應(yīng)該首先考慮物聯(lián)網(wǎng)的可擴(kuò)展性。
具有可擴(kuò)展性的物聯(lián)網(wǎng)系統(tǒng)通過(guò)添加額外資源來(lái)處理越來(lái)越多的工作的能力。由于物聯(lián)網(wǎng)技術(shù)特有的挑戰(zhàn),這仍然是許多開(kāi)發(fā)人員面臨的難題。如果不及早解決,這些挑戰(zhàn)可能會(huì)發(fā)展成更大的問(wèn)題,從而增加維護(hù)時(shí)間和延遲問(wèn)題的風(fēng)險(xiǎn)。以下討論克服物聯(lián)網(wǎng)最棘手的可擴(kuò)展性問(wèn)題的三個(gè)技巧。
為什么物聯(lián)網(wǎng)存在可擴(kuò)展性問(wèn)題?
在開(kāi)始討論解決方案之前,需要考慮一下為什么物聯(lián)網(wǎng)存在特有的可擴(kuò)展性問(wèn)題。它們包括:
- 缺乏規(guī)劃階段:在開(kāi)始實(shí)施物聯(lián)網(wǎng)項(xiàng)目時(shí),需要一個(gè)強(qiáng)有力的概念驗(yàn)證 (POC) 和規(guī)劃階段。鑒于物聯(lián)網(wǎng)項(xiàng)目具有多種技術(shù)和組織因素,因此在規(guī)劃階段需要考慮很多方面。然而在很多時(shí)候,這些方面是未知的或被忽視的,因?yàn)樗鼈兤鸪蹩雌饋?lái)無(wú)關(guān)緊要,但它們可能會(huì)對(duì)項(xiàng)目的增長(zhǎng)能力產(chǎn)生巨大影響。
- 與未來(lái)設(shè)備兼容性的不確定性:眾所周知,如今有大量新的物聯(lián)網(wǎng)設(shè)備進(jìn)入市場(chǎng)。根據(jù)調(diào)研機(jī)構(gòu)的估計(jì),到2024年,全球連接物聯(lián)網(wǎng)的設(shè)備數(shù)量將達(dá)到830億臺(tái)。除此之外,所有這些設(shè)備都配備了新的或更新了功能、硬件、軟件。更重要的是,物聯(lián)網(wǎng)設(shè)備也可以改變它們與物聯(lián)網(wǎng)通信協(xié)議交互的方式。這意味著五年后添加或更換新設(shè)備的過(guò)程可能與當(dāng)今完全不同。這將需要更改架構(gòu)、軟件或協(xié)議本身。
- 預(yù)算限制:物聯(lián)網(wǎng)開(kāi)發(fā)商可能不愿意現(xiàn)在投資以避免在未來(lái)出現(xiàn)問(wèn)題,因此不愿意冒險(xiǎn)。企業(yè)在決定投資物聯(lián)網(wǎng)之后需要解決預(yù)算問(wèn)題。
一、從小處著手并擴(kuò)大規(guī)模
首先,如果企業(yè)擴(kuò)大規(guī)模,最好在一段時(shí)間內(nèi)不要急于快速增長(zhǎng)。如果從幾個(gè)可管理的設(shè)備開(kāi)始實(shí)施項(xiàng)目,并隨著時(shí)間的推移定期添加一些設(shè)備,那么就不必更改整個(gè)基礎(chǔ)設(shè)施,也不會(huì)花費(fèi)太多時(shí)間來(lái)適應(yīng)它們。
話(huà)雖如此,如果企業(yè)確實(shí)采納了這個(gè)技巧,那么需要注意的是,企業(yè)花費(fèi)在適應(yīng)新設(shè)備上的時(shí)間最終可能比替代設(shè)備花費(fèi)的時(shí)間還要多。這是因?yàn)楫?dāng)企業(yè)立即實(shí)施可擴(kuò)展系統(tǒng)時(shí),可以一次性添加多個(gè)設(shè)備。
像大多數(shù)事情一樣,這一切都取決于企業(yè)的特定物聯(lián)網(wǎng)項(xiàng)目。如果規(guī)模比較小,可以逐漸擴(kuò)展。但是,如果企業(yè)希望獲得長(zhǎng)期增長(zhǎng)和可擴(kuò)展性,則值得考慮更廣闊的前景。
二、使用簡(jiǎn)單的架構(gòu)
其次,企業(yè)從一開(kāi)始就為其項(xiàng)目選擇正確的架構(gòu)可以減少未來(lái)出現(xiàn)的問(wèn)題。此外,選擇一個(gè)考慮到未來(lái)的選項(xiàng)很重要,而采用MQTT協(xié)議還是REST 架構(gòu)是企業(yè)必須做出的決定。
對(duì)于物聯(lián)網(wǎng)設(shè)備之間的通信,使用MQTT協(xié)議的一對(duì)多的系統(tǒng)對(duì)于規(guī)模較小的項(xiàng)目來(lái)說(shuō)似乎是一個(gè)好主意。然而從根本上說(shuō),它可能沒(méi)有那么有效。這是因?yàn)樗木幊虖?fù)雜性、延遲和安全問(wèn)題,以及需要不斷維護(hù)。從長(zhǎng)遠(yuǎn)來(lái)看,企業(yè)應(yīng)該使用更簡(jiǎn)單的架構(gòu)。
也就是說(shuō),REST API 為開(kāi)發(fā)人員帶來(lái)了一些好處,其中包括易用性、更好的安全性和改進(jìn)的可擴(kuò)展性。
三、合并一個(gè)去中心化的AEP平臺(tái)
第三,企業(yè)使用分散式的物聯(lián)網(wǎng)應(yīng)用支持平臺(tái) (AEP) 有效擴(kuò)展其物聯(lián)網(wǎng)項(xiàng)目。為了解釋它的優(yōu)點(diǎn),先要了解AEP解決方案,例如物聯(lián)網(wǎng)或Microsoft Azure,通過(guò)云平臺(tái)在物聯(lián)網(wǎng)設(shè)備之間發(fā)送數(shù)據(jù)。因此,對(duì)于客戶(hù)端與設(shè)備交互,數(shù)據(jù)必須轉(zhuǎn)到外部集中式數(shù)據(jù)庫(kù)并臨時(shí)存儲(chǔ)在那里。
這對(duì)于設(shè)備安全來(lái)說(shuō)并不是一個(gè)好方法,因?yàn)榧词箶?shù)據(jù)從客戶(hù)端到數(shù)據(jù)庫(kù)以及從數(shù)據(jù)庫(kù)到設(shè)備加密,存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)仍然容易受到網(wǎng)絡(luò)攻擊。此外,由于需要通過(guò)云平臺(tái)的額外步驟,傳統(tǒng)的AEP解決方案意味著更多的延遲問(wèn)題,因?yàn)樗袛?shù)據(jù)流量都必須通過(guò)相同的中央“中繼”設(shè)置運(yùn)行。
另一方面,去中心化的AEP平臺(tái)建立了從客戶(hù)端到設(shè)備的直接連接。一旦建立了P2P(點(diǎn)對(duì)點(diǎn))連接,連接的唯一限制是客戶(hù)端和設(shè)備的計(jì)算能力以及兩個(gè)目的地的互聯(lián)網(wǎng)吞吐率。
這確保了物聯(lián)網(wǎng)設(shè)備之間的低延遲、可擴(kuò)展性范圍,并消除了數(shù)據(jù)攔截的風(fēng)險(xiǎn)。簡(jiǎn)而言之,分散的AEP解決方案使企業(yè)可以通過(guò)降低安全風(fēng)險(xiǎn)和對(duì)通信速度的影響最小化來(lái)更輕松地?cái)U(kuò)展,無(wú)論企業(yè)的項(xiàng)目規(guī)模有多大。
不要忘記測(cè)試!
很多人經(jīng)常忽視這個(gè)建議:測(cè)試。每當(dāng)企業(yè)嘗試采用或構(gòu)建大規(guī)模物聯(lián)網(wǎng)時(shí),需要確保不斷測(cè)試可能影響成功設(shè)備可擴(kuò)展性的所有方面。
隨著項(xiàng)目規(guī)模的擴(kuò)大,不斷進(jìn)行測(cè)試至關(guān)重要。嘗試記錄延遲水平、連接的設(shè)備、使用的帶寬量、發(fā)送和接收的消息,以及可能影響項(xiàng)目為增長(zhǎng)做好準(zhǔn)備的任何方面。
雖然物聯(lián)網(wǎng)項(xiàng)目面臨著獨(dú)特的可擴(kuò)展性挑戰(zhàn),但采取必要的措施對(duì)最大限度地減少這些問(wèn)題大有幫助??偠灾?,對(duì)于關(guān)注可擴(kuò)展性的物聯(lián)網(wǎng)開(kāi)發(fā)人員來(lái)說(shuō),重要的是要認(rèn)識(shí)到其挑戰(zhàn),制定強(qiáng)有力的計(jì)劃階段,并從一開(kāi)始就投入必要的時(shí)間和資金,最后明智地選擇架構(gòu)。