【问题标题】:What is the AWS perfect substitute for Azure SignalR Service?什么是 Azure SignalR 服务的 AWS 完美替代品?
【发布时间】:2020-09-22 17:40:53
【问题描述】:

最近,我使用 Azure 的“Azure SignalR Service”和 Azure App Service 构建了一个实时聊天应用程序。它像魔术一样工作。我爱它! 但是,我现在受限于在我的平台上使用 AWS,并且想要一个同等的替代服务,这样我就可以构建一个实时服务,只利用 AWS 服务。

我可以利用 AWS 中的什么相等的子站点,以便我可以构建一个实时应用程序,类似于我使用 Azure SignalR 服务和 Azure 应用程序服务构建 Azure 应用程序的方式?

我的计划是同时使用 API Gateway + AWS Elastic Beanstock。我在这里有什么选择? Elastic beanstock 会成功吗?不确定我是否需要在 Elastic beanstock 中实现某种类型的永远在线功能,以便停机期间不会降低 AWS 资源并中断 WebSocket 连接。

值得一提的注意事项。作为该项目的一部分,我的一项硬性要求是创建一个完整的 HTTP api。我的计划是把它放在 API Gateway 代理后面。

AWS 在此声明它使用 API 网关提供实时服务

https://aws.amazon.com/blogs/compute/announcing-websocket-apis-in-amazon-api-gateway/

但是,在 API Gateway 中,我相信我需要创建“HTTP API”而不是“WebSocket API”。如果我有一个使用例如 ASP.NET Core web api 的后端 web api,我仍然可以选择 WebSocket API 吗?

如果我使用 AWS“WebSocket API”,我如何为我的后端 ASP.NET COre web api 创建一个 API 前端(代理),同时仍然允许实时?

【问题讨论】:

  • jbooker,你找到完美的替代品了吗?
  • 我还没有验证任何内容..
  • 正在寻找类似的东西。你选择了哪个选项?你有没有想过用 Ocelot 滚动你自己的 api 网关?我正在拼命寻找 AWS 中的选项,以使 Websockets 与 AWS Fargate 中的容器很好地配合使用。还没有探索过似乎也支持 Websockets 的 ALB,但在网上找不到太多。
  • 尚未选择任何选项..
  • 同样的情况。我们能够让反应客户端连接到微服务,但 SingalR 说它由于超时而无法协商。

标签: amazon-web-services signalr amazon-elastic-beanstalk aws-api-gateway


【解决方案1】:

Amplify 和 AWS IoT 网关正是您所需要的。 IoT GW 使用 MQTT 和 WebSockets 提供 pub-sub。

https://docs.amplify.aws/lib/pubsub/getting-started/q/platform/js

对于 Web 应用程序,他们有 JS 库,允许您获取身份验证令牌,然后订阅或发布到主题。在服务器端,您可以使用 AWS 开发工具包将消息发布到主题。

【讨论】:

    【解决方案2】:

    查看 Appsynce 服务用于 UI 上的实时数据通信,我们需要更新 Angular UI 上的 npm amplify 库,请查看以下 URL。

    https://aws.amazon.com/blogs/mobile/building-a-real-time-stock-monitoring-dashboard-with-aws-appsync/

    https://aws.amazon.com/blogs/mobile/appsync-real-time-live-sports/

    【讨论】:

      【解决方案3】:

      看看 AWS AppSync,我认为它与您正在寻找的相似。

      https://aws.amazon.com/appsync/

      【讨论】:

      • 我知道的不够肯定,但看起来 appsync 是一个 graphql api。我不确定这如何解决客户端套接字连接。
      • @dhysong GraphQL 支持订阅,看起来 AppSync 用 GraphQL 实现了实时订阅:aws.amazon.com/blogs/mobile/iot-with-aws-appsync
      猜你喜欢
      • 2020-08-05
      • 2020-11-20
      • 2019-02-22
      • 2011-05-07
      • 2012-04-24
      • 2019-12-03
      • 2010-09-17
      • 2012-03-27
      • 2012-09-30
      相关资源
      最近更新 更多