Greengrass Connectivity and Missed Shadow Updates

0

Hi - I'm looking for general guidance on the use of shadows for syncing configuration (state via Shadow documents) between a GGC device and IoT Core. We use python and Java SDKs for connecting to the IoT Core and subscribing to/updating shadows.

We are trying to manage a concern where an update to a shadow document that occurs in the cloud is not transmitted to the device during brief disconnectivity, but the device does not know that connectivity dropped out.

Consider the following example:

  1. MQTT connection is established.
  2. Disconnect wifi/ethernet etc (connection to cloud)
  3. Update shadow document from the cloud
  4. Turn the Wi-Fi after a few seconds

Expected:
5) MQTT Connection events & Shadow change events are triggered (e.g connection resumed, shadowUpdate topic message, etc)

We are seeing that if the disconnection in #4 is short then MQTT Connection events and shadow change events do not call back.

The failure mode here is that the device thinks it has the latest shadow document, but it does not.

This seems like a general consensus issue in distributed systems and I am sure AWS has considered this issue.

Does anyone have any ideas?

Thanks
Chris

Edited by: cmutzel on Jul 21, 2021 5:56 PM

cmutzel
質問済み 3年前183ビュー
1回答
0

Spoke with Gavin at AWS today. He suggested that if using QoS=1, the Pub message on the Shadow topic should be resent until it is PUBACKed by the client on the device. This would suggest that there may be something wrong with our test configuration.

cmutzel
回答済み 3年前

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

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

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

関連するコンテンツ