首页 > 解决方案 > 如何使用 API 网关 WebSocket 进行前后端实时通信

问题描述

我们有一个使用无服务器框架编写的多租户无服务器应用程序。后端主要是微服务,带有使用 API 网关、Lambda 函数和 DynamoDB 实现的 REST API。

现在,我们希望在不同的操作上发送实时通知。

外汇:

用户被管理员从组中添加/删除

管理员更新了用户的一些信息

我们有用于上述操作的 REST API。现在,要向前端发送实时通知,我们可以:

通过 MQTT 使用 WebSockets ( https://serverless.com/blog/realtime-updates-using-lambda-websockets-iot )

使用带有 websockets 的 API 网关 ( https://www.serverless.com/blog/api-gateway-websockets-support )

如果通过 REST API 完成的操作必须通过 WebSocket 服务触发通知,我猜我们需要让我们的 REST API 将消息发布到 WebSocket 服务拥有的 SNS/SQS,然后将通知发送到前端。听起来对吗?

这两种方法哪个更好?优缺点都有什么?

乍一看,在 MQTT 上使用 WebSockets 似乎是一种更简单的方法。不是这样吗?

标签: amazon-web-serviceswebsocketamazon-dynamodbaws-api-gatewayreal-time

解决方案


推荐阅读