您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么使用MQTT與函數(shù)計(jì)算做熱力圖”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么使用MQTT與函數(shù)計(jì)算做熱力圖”吧!
1. 數(shù)據(jù)通道的連接能力:數(shù)據(jù)通道隨著業(yè)務(wù)的擴(kuò)展,機(jī)器人的投放也會(huì)同步增加,對(duì)于數(shù)據(jù)通道有足夠的擴(kuò)展靈活性,可以按需進(jìn)行擴(kuò)展,同時(shí)連接的級(jí)別能夠支持10W+級(jí)別的擴(kuò)展。
2. 簡(jiǎn)潔數(shù)據(jù)清洗的能力:對(duì)于數(shù)據(jù)的處理,本質(zhì)上就是對(duì)數(shù)據(jù)的歸納統(tǒng)計(jì),邏輯實(shí)現(xiàn)上并不復(fù)雜。對(duì)于數(shù)據(jù)本身的峰谷變化,能有最簡(jiǎn)單有效的匹配擴(kuò)縮處理能力即可,在清洗上不希望為此引入復(fù)雜的傳統(tǒng)大數(shù)據(jù)級(jí)別的笨重方案。
3. 彈性數(shù)據(jù)訪問的能力:這里提到的的熱力圖信息,以后會(huì)考慮開放給終端用戶訪問,訪問量都是動(dòng)態(tài)變化的,隨著不同的時(shí)間、節(jié)日、突發(fā)事件等都會(huì)有不可預(yù)知的幅度變化,所以在此業(yè)務(wù)中要求有彈性的訪問能力。業(yè)務(wù)方不希望通過限流方式來實(shí)現(xiàn),因?yàn)闀?huì)對(duì)業(yè)務(wù)量本身造成影響。
4. 性能優(yōu)越的存儲(chǔ)能力:此場(chǎng)景下,數(shù)據(jù)寫入與讀取并發(fā)量都高,客戶希望使用NoSQL的方式進(jìn)行存儲(chǔ)。NoSQL 類型能最好支持排序的功能,本文介紹的方案中使用Redis,不再做更多的分析介紹。
數(shù)據(jù)通道的連接能力
自建Kafka
優(yōu)點(diǎn):
Kafka作為通用的數(shù)據(jù)收集信息通道,使用面廣泛,接入方式多樣化。社區(qū)完善,學(xué)習(xí)成本低。
Kafka本身搭建容易,與下游的大數(shù)據(jù)處理產(chǎn)品協(xié)調(diào)方案成熟。
缺點(diǎn):
動(dòng)態(tài)處理Kafka的擴(kuò)容復(fù)雜。
需要搭建額外處理集群的穩(wěn)定性配套方案。
外網(wǎng)網(wǎng)絡(luò)流量管理需要配合額外的方案。
主流方案是作為連接應(yīng)用的收集能力,對(duì)于終端的連接能力沒有規(guī)模級(jí)別的案例驗(yàn)證。
消息隊(duì)列MQTT方案
優(yōu)點(diǎn):
支持百萬級(jí)別的連接,完成可以覆蓋業(yè)務(wù)發(fā)展的訴求,為業(yè)務(wù)留足了擴(kuò)展空間。
MQTT的協(xié)議非常簡(jiǎn)潔,在端與服務(wù)間的傳輸中有優(yōu)勢(shì)。支持各種消息觸達(dá)的QoS質(zhì)量。
支持各種客戶端接入實(shí)現(xiàn)語(yǔ)言。
可實(shí)時(shí)觀測(cè)客戶端的連接情況,方便發(fā)現(xiàn)異常情況。
缺點(diǎn):
處理大數(shù)據(jù)的實(shí)踐沒有Kafka成熟,下游產(chǎn)品選型受一定的限制。
彈性數(shù)據(jù)清洗的能力
大數(shù)據(jù)方案(Storm、Spark、Flink等)
優(yōu)點(diǎn):
開源的通用方案,資料眾多,方案成熟。
缺點(diǎn):
搭建運(yùn)維復(fù)雜,需要提供額外的監(jiān)控與恢復(fù)手段。
需要學(xué)習(xí)接受各種組件方式(下圖是以Storm為例)。
提前評(píng)估資源使用情況,無法按照實(shí)時(shí)數(shù)據(jù)量進(jìn)行相應(yīng)的擴(kuò)縮使用。
函數(shù)計(jì)算方案
優(yōu)點(diǎn):
按需進(jìn)行擴(kuò)縮,百毫秒級(jí)的伸縮能力,適合數(shù)據(jù)量的脈沖峰谷變化。
不需要進(jìn)行清洗環(huán)境的管理。
概念簡(jiǎn)單,學(xué)習(xí)成本低。
其它優(yōu)點(diǎn)參考下圖:
缺點(diǎn):
函數(shù)計(jì)算是各個(gè)云廠商的產(chǎn)品。要求一定需要在云上運(yùn)行。
彈性數(shù)據(jù)訪問的能力
傳統(tǒng)應(yīng)用的方案
優(yōu)點(diǎn):
作為業(yè)務(wù)的一部分嵌在某個(gè)應(yīng)用實(shí)現(xiàn)中,技術(shù)成熟,學(xué)習(xí)成本低。
缺點(diǎn):
需要自實(shí)現(xiàn)根據(jù)業(yè)務(wù)請(qǐng)求量來進(jìn)行彈縮處理,或者很多時(shí)候采用評(píng)估的方式進(jìn)行資源冗余處理。
API Gateway+函數(shù)計(jì)算方案
優(yōu)點(diǎn):
根據(jù)客戶的請(qǐng)求量實(shí)時(shí)進(jìn)行彈縮處理。按需使用,不為高峰時(shí)段煩惱,不會(huì)閑置付費(fèi)。
自動(dòng)附帶專業(yè)的訪問監(jiān)控大盤。
缺點(diǎn):
需要少量的學(xué)習(xí)成本。
綜述
在這個(gè)熱力圖信息收集清選與訪問業(yè)務(wù)中,可以參考使用下圖的解決方案完美實(shí)現(xiàn)。
MQTT到函數(shù)計(jì)算的介紹
請(qǐng)參考函數(shù)計(jì)算的微消息隊(duì)列MQTT服務(wù)集成方案。
API網(wǎng)關(guān)通過函數(shù)計(jì)算提取數(shù)據(jù)的介紹
詳情請(qǐng)參考API網(wǎng)關(guān)函數(shù)觸發(fā)實(shí)例。
以Node.js為例:
module.exports.handler = function(event, context, callback) { var event = JSON.parse(event); var content = { path: event.path, method: event.method, headers: event.headers, queryParameters: event.queryParameters, pathParameters: event.pathParameters, body: event.body // 您可以在這里編寫您自己的邏輯。 // 從Redis提取數(shù)據(jù)的邏輯 } var response = { isBase64Encoded: false, statusCode: '200', headers: { 'x-custom-header': 'header value' }, body: content }; callback(null, response) };
到此,相信大家對(duì)“怎么使用MQTT與函數(shù)計(jì)算做熱力圖”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。