We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
问题1. 集群可能出现热点,即可能存在大部分的node,同时向一个node路由信息的情况,这时候就可能会出现消息堆积等状况,并且单就理论而言,我们只需要订阅" /# ",就可能会出上述情况。
问题2. TPS做不到横向扩展,我们考虑到极端情况,当每个node都有订阅" /# "的用户,相当于我们对任意一个node 发布 message时,都会对整个集群的每个node 发布 message,此时外界publish message 的 TPS到到达单个node的峰值时,我们增加node对TPS而言毫无作用
不知道作者是否有对这些问题作出了规避?
The text was updated successfully, but these errors were encountered:
@ezlhq 订阅/#是很恐怖的事情,无论对于服务端还是客户端~第一种情况肯定存在单点问题无法避免,我认为别的MQTT服务端实现也无法应付。第二种情况我觉得可以简单点处理,用一台节点专门应付/#这种主题,客户端也绕过负载 直接打到这个节点上,这样问题就退化成第一种情况了。不知你有没有什么好的思路? 我做mqtt当时我们的项目订阅端和发布端是通过特定话题耦合的,没有订阅/#的情况。
Sorry, something went wrong.
@hui6075 我们其实也没有 /# 这种情况,只是突然想到可能有这种情况。感觉处理这种问题的方式好像只有业务上避免开 :)
我觉得不需要同步带#或+的订阅吧, 这类订阅应该是服务端才会做的, 这样服务端会在自各节点上处理自己的业务, 当发布消息时是一个具本的主题, 这个主题如果是本节点中有订阅,就会在本节点发布, 同时如果集群中其他节点也有订阅, 也会同步过去。
No branches or pull requests
问题1. 集群可能出现热点,即可能存在大部分的node,同时向一个node路由信息的情况,这时候就可能会出现消息堆积等状况,并且单就理论而言,我们只需要订阅" /# ",就可能会出上述情况。
问题2. TPS做不到横向扩展,我们考虑到极端情况,当每个node都有订阅" /# "的用户,相当于我们对任意一个node 发布 message时,都会对整个集群的每个node 发布 message,此时外界publish message 的 TPS到到达单个node的峰值时,我们增加node对TPS而言毫无作用
不知道作者是否有对这些问题作出了规避?
The text was updated successfully, but these errors were encountered: