【问题标题】:How to use Socket.io in aws lambda functions如何在 aws lambda 函数中使用 Socket.io
【发布时间】:2016-12-08 13:35:18
【问题描述】:

我正在为我的 Web 应用程序使用带有 aws lambda 函数的 node js。我想在我的网络应用程序中使用网络套接字。而socket.io是一个非常有名的node.js库。

但我不确定如何在 aws lambda 中使用它。谁能告诉我怎么做,是否可以使用 lambda 函数?

【问题讨论】:

  • 在 AWS Lamba 中使用 socket.io 是不可能的,也不是一个好的选择。对于套接字编程,我们打开一个连接,我们无法预测连接何时关闭。 AWS lambda 计费基于函数执行的时间。我们也不能执行一个函数超过 5 分钟。会影响成本。

标签: node.js amazon-web-services socket.io aws-lambda


【解决方案1】:

不能将 socket.io 与 lambda 一起使用。 Lambda 有执行时间限制,因此无法与客户端保持开放连接。

您可以做的是使用 SNS。 Lambda 可以向 SNS 主题发布消息,并且可以通过 SNS 调用 lambda。

【讨论】:

  • 你能告诉我更多关于这方面的信息吗?这将非常有帮助。
  • 用您想知道的具体内容创建新问题。
【解决方案2】:

存在解决方法 - 它是 WebSockets over MQTT in AWS IoT。这样您就可以从打开的套接字连接执行您的 Lambda 函数。

【讨论】:

    【解决方案3】:

    目前,AWS API Gateway supports WebSockets。 不幸的是,我没有设法通过 socket.io 进行连接,因为它会生成一个带有附加参数的自定义 URL:/?EIO=3&transport=polling&sid=

    但我发现了微型 WebSocket 包装器 sockette (used this tutorial),它工作正常!

    【讨论】:

      猜你喜欢
      • 2021-08-19
      • 1970-01-01
      • 1970-01-01
      • 2022-01-27
      • 2021-03-20
      • 2019-10-30
      • 2016-03-25
      • 1970-01-01
      • 2017-06-04
      相关资源
      最近更新 更多