我正在使用Redis pub / sub在两个或多个节点进程之间编写p2p通信
使用ioredis
lib。
我将发布不同类型的消息,例如:
我不知道redis v3.2.1
订阅多个频道(每种消息类型一个)还是创建单个频道并发送带有定义消息类型的属性的json消息是否更好? :
{type: 'hello', message: 'hello i'm process foo' }
{type: 'wanna-pick', message: 'foo wanna pick work 42' }
预先感谢
答案 0 :(得分:1)
两种解决方案都很好。我认为这两种解决方案之间没有任何性能差异。如果您确实有太多通道,则可能会使Redis占用更多内存。但是,这应该不成问题。如果您愿意的话,可以做一些基准测试。
个人而言,我更喜欢第二种解决方案,即单一渠道。使用单个频道,当您添加或删除类型时,客户端不需要订阅新频道或取消订阅已删除的频道。尽管那没什么大不了。