亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

嘗試在具有多個服務器或可能多路復用的 Python 中使用 gRPC

嘗試在具有多個服務器或可能多路復用的 Python 中使用 gRPC

瀟湘沐 2023-02-22 19:17:13
我們的用例涉及一個類,該類必須遠程初始化另一個類的多個實例(每個實例都在不同的 IoT 設備上),并且必須從每個實例中獲取特定結果。最多,我們需要每秒從每個遠程客戶端接收 30 條消息,每條消息都相對較小。你們會推薦什么類型的架構來解決這個問題?我們在想,位于 IoT 設備上的每個類都將充當服務器,而接收結果的類將是客戶端,那么我們是否應該為每個 IoT 設備創建一個服務器,每個服務器都有自己的通道?或者是否可以讓每個 IoT 設備在同一臺服務器上使用相同的服務(意味著同一臺服務器上的同一服務會有多個實例,但在不同的設備上)?
查看完整描述

1 回答

?
手掌心

TA貢獻1942條經驗 獲得超3個贊

該問題將受益于其他詳細信息以幫助指導答案。

gRPC(及其對 HTTP/2 的使用)是比 MQTT 等“更重”的協議。MQTT 更常用于 IoT 設備,因為它占用空間更小。REST/HTTP(即使比 MQTT 更重)也可能比 gRPC/HTTP2 對您有好處。

如果您致力于 gRPC,我想知道反轉您提議的架構并讓 IoT 設備成為客戶端是否會更好?這似乎提供了額外的安全性,因為客戶端發起與您的服務器的通信而不是公開服務。無論哪種方式(如果您決定使用 MQTT),希望您將使用 mTLS。我假設(!?)客戶端實現小于服務器實現。

無論方向如何,客戶端和服務器都可以(獨立地)流式傳輸消息。IoT 設備(客戶端或服務器)每秒可以傳輸 30 條消息。服務器可以流式傳輸管理|控制消息。

我沒有管理物聯網設備群的經驗,但我認為,遠程管理|監控和無線升級|修補對您來說是重要的要求。gRPC 不限制任何這些功能,但調試可能更具挑戰性。使用例如 REST/HTTP,卷曲端點是微不足道的,但是使用 gRPC(即使是優秀的grpcurl)你將被限制在所實現的服務上。是的,您也不能調用不存在的 REST API,但我發現遠程調試 gRPC 服務比 REST 更具挑戰性。


查看完整回答
反對 回復 2023-02-22
  • 1 回答
  • 0 關注
  • 137 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號