AppSync Realtime Message Delivery Guarantee
We're leveraging Appsync's real-time subscription/mutation capabilities in our app. Just wanted to check and confirm if there's any message delivery guarantee built-in in Appsync? What if the message is sent via WebSocket but not received by a web client (due to the nature of TCP)? is there some kind of Ack/retry mechanism?
couldn't find much info related to message delivery guarantee (real-time WebSockets) in the Appsync docs
Maybe this sequence diagram can help you understand AppSync's GraphQL subscriptions mechanism.
AppSync does not provide an ACK / Retry mechanism in case the client does not receive the event.
However, I think it would have a considerable effort to manage any retry or guarantee mechanisms for each client.
However you could do this test:
- Register a client to a subscription
- Disconnect client connection (simulating network failure)
- Invoke a mutation
- See what happen client side
- Reconnect the network to the client
- See what happen client side.
(I would expect that you will not receive the mutation event)
I also recommend that you use the AWS suggested clients: https://docs.aws.amazon.com/en_en/appsync/latest/devguide/building-a-client-app.html
There are two main modes of "mobile notifications", one is based on store-and-forward messages such as Apple Push Notification Service (APNS) or Google's, and the second is based on push/subscriptions such as AWS Simple Notification Service (SNS).
Most use cases of GraphQL and implementations are similar to the latter use case, which means that if the endpoint is not available the notification is dropped. These use cases are designed on the time-sensitivity of the notification and creating a long queue of all the notifications that you missed is usually less relevant. The assumption in these use cases is that if a mobile device is not connected to the network, the mobile application will pull the latest status of the data upon reconnection.
NLB Static IP QuestionAccepted Answerasked 3 years ago
Delivery Event (Firehose)asked 8 months ago
Pinpoint Push Message ErrorAccepted Answerasked 3 months ago
Custom domain with aws-appsync's AppsyncClientServiceasked a month ago
MessageID from SendEmail doesn't always match delivery notificationasked 2 years ago
How do we turn off SMPP delivery message when using Pinpoint and SNS for 2 way SMS?asked 2 months ago
AppSync Realtime Message Delivery Guaranteeasked a month ago
Instance availabilityasked 7 months ago
problem delivering to AWS work email/ not able to receive any emailasked 21 days ago
"server response error0. undefined" - how to solve?asked 12 days ago