Azure 服务总线适配器
工作原理
此适配器使用 Azure 服务总线服务 在 Socket.IO 集群的节点之间转发消息。
此适配器的源代码可以在 此处 找到。
支持的功能
功能 | socket.io 版本 | 支持 |
---|---|---|
套接字管理 | 4.0.0 | ✅ 是(从版本 0.1.0 开始) |
服务器间通信 | 4.1.0 | ✅ 是(从版本 0.1.0 开始) |
带有确认的广播 | 4.5.0 | ✅ 是(从版本 0.1.0 开始) |
连接状态恢复 | 4.6.0 | ❌ 否 |
安装
npm install @socket.io/azure-service-bus-adapter
用法
import { ServiceBusClient, ServiceBusAdministrationClient } from "@azure/service-bus";
import { Server } from "socket.io";
import { createAdapter } from "@socket.io/azure-service-bus-adapter";
const connectionString = "Endpoint=...";
const serviceBusClient = new ServiceBusClient(connectionString);
const serviceBusAdminClient = new ServiceBusAdministrationClient(connectionString);
const io = new Server({
adapter: createAdapter(serviceBusClient, serviceBusAdminClient)
});
// wait for the creation of the subscription
await io.of("/").adapter.init();
io.listen(3000);
选项
名称 | 描述 | 默认值 |
---|---|---|
topicName | 主题的名称。 | socket.io |
topicOptions | 用于创建主题的选项。 | - |
subscriptionPrefix | 订阅的前缀(每个 Socket.IO 服务器在集群中都会创建一个订阅)。 | socket.io |
receiverOptions | 用于创建订阅的选项。 | - |
topicOptions | 用于创建接收器的选项。 | - |
heartbeatInterval | 两次心跳之间的时间间隔(毫秒)。 | 5_000 |
heartbeatTimeout | 在没有心跳的情况下,我们认为节点已关闭的时间间隔(毫秒)。 | 10_000 |
最新版本
版本 | 发布日期 | 发行说明 | 差异 |
---|---|---|---|
0.1.0 | 2024 年 3 月 | 链接 | - |