Socket.D v2.4 更新与兼容说明
v2.4 在 Broker 集群“可用性”方面有了极大的增强:
- 增加安全停止模式
- 增加二段式停止协议
- 增加 ip_hash 转发模式(可用于有状态或需要序顺的场景)
- Broker 的四种转发模式:
name
,name!
,name*
,*
- Broker 的四种转发模式:
- 调整了几个配置名,突出语义性
关于Broker 集群模式相关,可参考:《Broker 集群模式》
for Java
- 添加 LoadBalancer 集群负载均衡工具
- 添加 BrokerListener 新的转发路由机制,固定给某个接收者(name!)
- 调整 Socketd 开头的异常类改为 SocketD 开头(与 python 统一)
- 调整 几个配置名
接配置名 | 新配置名 | 备注 |
---|---|---|
maxThreads | exchangeThreads | 交换线程数,用于消息接收等(原来的名字,语义不明) |
coreThreads | codecThreads | 解码线程数,用于编解码等(原来的名字,语义不明) |
/ | ioThreads | Io线程数,用于连接等 |
sequenceMode | sequenceSend | 有锁顺序发送(原来的名字,语义不明) |
/ | nolockSend | 无锁发送 |
备注:关于线程配置,在不同的适配时使用情况不同。其中 exchange 支持直接配置线程池(以支持 jdk21 的虚拟线程池)
for JavaScript
- 添加 LoadBalancer 集群负载均衡工具
- 调整 Socketd 开头的异常类改为 SocketD 开头(与 python 统一)
- 调整 几个配置名
接配置名 | 新配置名 | 备注 |
---|---|---|
maxThreads | exchangeThreads | 交换线程数,用于消息接收等(原来的名字,语义不明) |
coreThreads | codecThreads | 解码线程数,用于编解码等(原来的名字,语义不明) |
/ | ioThreads | Io线程数,用于连接等 |
备注:关于线程配置在 js 里,基本没用到