Skip to main content
Version: 4.x

AWS SQS 适配器

工作原理

¥How it works

该适配器使用 AWS 简单队列服务 在 Socket.IO 集群的节点之间转发消息。

¥This adapter uses AWS Simple Queue Service to forward messages between the nodes of a Socket.IO cluster.

与现有的 socket.io-sqs 包不同,该包支持二进制有效负载和动态命名空间。

¥Unlike the existing socket.io-sqs package, this package supports binary payloads and dynamic namespaces.

该适配器的源代码可以找到 此处

¥The source code of this adapter can be found here.

支持的功能

¥Supported features

特性socket.io 版本支持
套接字管理4.0.0:白色复选标记:是(自版本 0.1.0 起)
服务器间通信4.1.0:白色复选标记:是(自版本 0.1.0 起)
广播并致谢4.5.0:白色复选标记:是(自版本 0.1.0 起)
连接状态恢复4.6.0:X:不

安装

¥Installation

npm install @socket.io/aws-sqs-adapter

用法

¥Usage

import { SNS } from "@aws-sdk/client-sns";
import { SQS } from "@aws-sdk/client-sqs";
import { Server } from "socket.io";
import { createAdapter } from "@socket.io/aws-sqs-adapter";

const snsClient = new SNS();
const sqsClient = new SQS();

const io = new Server({
adapter: createAdapter(snsClient, sqsClient)
});

// wait for the creation of the SQS queue
await io.of("/").adapter.init();

io.listen(3000);

选项

¥Options

名称描述默认值
topicNameSNS 主题的名称。socket.io
topicTags应用到新 SNS 主题的标签。-
queuePrefixSQS 队列的前缀。socket.io
queueTags要应用于新 SQS 队列的标签。-
heartbeatInterval两次心跳之间的毫秒数。5_000
heartbeatTimeout在我们考虑节点关闭之前没有心跳的毫秒数。10_000

最新版本

¥Latest releases

版本发布日期发行说明差异
0.1.12024 年 6 月link0.1.0...0.1.1
0.1.02024 年 3 月link-

完整的变更日志

¥Complete changelog