溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么使用MQTT與函數(shù)計(jì)算做熱力圖

發(fā)布時(shí)間:2021-11-30 11:42:16 來源:億速云 閱讀:151 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容主要講解“怎么使用MQTT與函數(shù)計(jì)算做熱力圖”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么使用MQTT與函數(shù)計(jì)算做熱力圖”吧!

場(chǎng)景特點(diǎn)與要求:

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ù)方案分析

數(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ò)縮使用。

怎么使用MQTT與函數(shù)計(jì)算做熱力圖

怎么使用MQTT與函數(shù)計(jì)算做熱力圖

函數(shù)計(jì)算方案

優(yōu)點(diǎn):

  • 按需進(jìn)行擴(kuò)縮,百毫秒級(jí)的伸縮能力,適合數(shù)據(jù)量的脈沖峰谷變化。

  • 不需要進(jìn)行清洗環(huán)境的管理。

  • 概念簡(jiǎn)單,學(xué)習(xí)成本低。

  • 其它優(yōu)點(diǎn)參考下圖:

怎么使用MQTT與函數(shù)計(jì)算做熱力圖

缺點(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ì)算做熱力圖

重點(diǎn)接入步驟

MQTT到函數(shù)計(jì)算的介紹

請(qǐng)參考函數(shù)計(jì)算的微消息隊(duì)列MQTT服務(wù)集成方案。

怎么使用MQTT與函數(shù)計(jì)算做熱力圖

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í)!

向AI問一下細(xì)節(jié)

免責(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)容。

AI