guaranteed delivery of events with intermittently offline Device

0

I have a GreenGrass device that can be intermittently offline, and I would like to inform the server of important events that happen.

Is there a message queuing system I can use within GreenGrass where I publish the event locally and whenever the Device is re-connected it will deliver this message.

Can I use IoT-Core for this ? Will it allow me to publish multiple messages to a topic and will they all get cached until delivery, and they arrive in the same order that they were sent with ?

Does it have a 'save to disk' option so it will retain the messages for delivery even in-between reboots ?

clogwog
質問済み 2年前561ビュー
1回答
0
承認された回答

There is an MQTT spooler, but it's presently an in-memory spooler.

https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html

spooler (Optional) The MQTT spooler configuration for the Greengrass core device. This object contains the following information:

maxSizeInBytes (Optional) The maximum size of the cache where the core device stores unprocessed MQTT messages in memory. If the cache is full, the core device discards the oldest messages to add new messages.

Default: 2621440 (2.5 MB)

keepQos0WhenOffline (Optional) You can spool MQTT QoS 0 messages that the core device receives while its offline. If you set this option to true, the core device spools QoS 0 messages that it can't send while it's offline. If you set this option to false, the core device discards these messages. The core device always spools QoS 1 messages unless the spool is full.

Default: false

You can see some discussion about a persistent spooler here: https://github.com/aws-greengrass/aws-greengrass-nucleus/issues/825

profile pictureAWS
エキスパート
Greg_B
回答済み 2年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ