【发布时间】:2017-05-17 17:02:54
【问题描述】:
因为我正在使用 netty 制作聊天应用程序。因为我有 netty 服务器集群。
因为我将所有客户端的通道 ID 存储在 Redis 中,以获取连接到 netty 服务器的所有通道的引用。
我想将所有 Channel 对象存储到 Redis 以便从任何节点或实例我可以获取所有客户端 Channel 对象,因为如果我想获取在其他节点上创建的其他客户端 Channel,则在该节点上,如何获取这些驻留在其他节点或实例上的客户端通道对象?
所以最好将客户端 Channel 对象存储到 redis,这样我就可以从任何节点获取任何客户端 Channel 对象。但是 Channel 实现类在 netty 中是不可序列化的。
- 那么如何在 Redis 中存储 Channel 对象呢?
- 通过扩展 Channel 来序列化 Channel 对象是否是个好主意 对象并实现 Serializable 接口?
- 如果这个解决方案不好,那么如何获取任何客户端Channel 来自 netty 集群中任何节点的对象?
谢谢。
【问题讨论】: