默认
打赏 发表评论 29
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
感谢分享~
Gateway既然持有client的长连接,而Broker又只是把消息发送到Gateway,并由Gateway分别发给连接的client,为什么broker还要保留用户的登录状态?
如果仅是群聊系统的话,Proxy+Broker+Router是否也值得由kafka来替换,其中Gateway负责转发消息给所有在线的用户。PS:看过JackJiang写的关于MQ用于即时消息系统的文章,但如果仅限于群聊系统的话,感觉kafka可以简化很多,不知我这个想法是否真的简化可行?
引用:mark_lin 发表于 2020-06-03 23:10
感谢分享~
Gateway既然持有client的长连接,而Broker又只是把消息发送到Gateway,并由Gateway分别发给连接 ...

说到底,kafka是特定领域的特定实现,而Proxy+Broker+Router其实是根据自已的整理技术架构和算法逻辑进行的实现,前者官方开发出的是什么东西你就只能那么用,无法进行匹配性的修改,而后者显然可以发挥的空间更大。总之一句话,im这种东西很难标准化,也导致了如果某些核心部分用标准化组件的话,那你根据整体架构和整体算法来调整的空间就没有,结果就是,那东西虽好,但可能并不能很好的匹配你的算法需求
一看这种又有详图,又有大段文字说明的,就知道是精品,每一行字都是宝贵的知识和技巧
签名: 陈俊
引用:15805817394 发表于 2022-01-06 15:32
一看这种又有详图,又有大段文字说明的,就知道是精品,每一行字都是宝贵的知识和技巧

识货!
请问如果按照这个架构实现群聊,那是不是同一个群(room)的用户都得连接同一个Gateway
引用:wzq1915414095 发表于 2022-01-16 21:45
请问如果按照这个架构实现群聊,那是不是同一个群(room)的用户都得连接同一个Gateway

不是,如果是这样,那架构的限制就很大了
我broker把同一个房间的消息只发送一次到同一个gateway,然后由gateway负责把消息发送给所有在这个房间的客户端,那gateway如何知道哪些连接属于哪些房间?redis?那每条消息都读redis?性能损失是不是很大?
美丽的姑娘(深邃的文章),我要娶你(我要研究明白),可你要彩礼200万(需要大量知识储备),终究是我不配(真心读不下去)
引用:一剑开天 发表于 2023-03-16 19:28
美丽的姑娘(深邃的文章),我要娶你(我要研究明白),可你要彩礼200万(需要大量知识储备),终究是我不 ...

还得好好学
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部