Are API Gateway Websocket APIs treated as asynchronous?

0

Hi,

I'm looking at setting up a Websocket API, with a Lambda as the message handler.

If my Lambda can't scale up quick enough, what happens? Will the messages be retried by API Gateway? Will the client think the message worked, or will they get an error? And if retries happen, how many - is there any possibility the message will get lost and I won't know about it?

Thanks for the help. Excited to try this!

preguntada hace 4 años571 visualizaciones
2 Respuestas
1

Unless you configure the route as two-way, client to WebSocket API is one-way. In the case, when Lambda invocation is failed, the client will not receive anything. If you configure the route as two-way, the client will receive the error response.
Alternatively, you could configure the route one-way and make your Lambda to send ACK message to the client. In this case, you need to handle when the client doesn't receive the ACK in a given amount of time.

API Gateway doesn't retry for the message. You may use SQS for the better reliability and re-drive the message.
Client - API Gateway - SQS - Lambda

But still client-side retry is also recommended since API Gateway to SQS can be failed as well.

AWS
respondido hace 4 años
0

Thanks for the reply! It's good to know that we only get one try at sending the message.

respondido hace 4 años

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas