知乎MQ消息推送架构的设计缺陷是啥( 三 )
3:基于用户体验做优先级设计
不要从架构上考虑那么多,基于用户体验做一个优先级设计,比如最简单的,非自己触发动作,用户本身真的那么关心实时性问题么?所以,用户本身触发动作做一个服务,做第一优先p1a1(优先1权限1)的生产发布。然后联动逻辑的通知发布,就做一个次优先p2a1,在这个次优先里保证数据的一致性优先(p2a2)。
最终到了用户面前的时候,自己实时的回答、评论和发布是p1a1的,自己马上可以看到结果。但是对于别的用户来说,你发布的消息是p2a1的,可能会有个xx~ms的延迟。然后用户触发刷新动作的时候,又是p2a2的操作。
也就是保持 自己发布--自己先看到---全系统缓存一致---别的用户看到----自己刷新看到的别的用户内容
所以,从设计上我不觉得做实时性的追求有什么错,但从产品角度上讲,有一些技术问题没那么必要,不是每个用户都是强迫症,开着抓包工具等回复然后非要你实时给他的。
回到这个问题本身也是,太过于追求实时性产生的一致性问题,也可能只有一波程序员在吐槽,对于关键模板群体的多粉用户,反正自己的未读消息是max,也就无所谓准确不准确了。
倒是关于推送多次相同的问题,我有点疑惑,到底是在推送的时候前置了缓存,还是使用了调度计划?????或者并没有做发布订阅??
【MQ消息推送架构的设计缺陷是啥】 因为多次推送这个,是最简单的直接的不满足队列要求的问题。
推荐阅读
- ■个税扣缴新方式来了!对年收入不超过6万元的人来说是个好消息
- 为啥知乎上普便有一种【我在北上广深打工,所以拥有更好的视野】这样的错觉
- 骨裂|
- 知乎有没有必要增加一个特别关注功能
- SUV|小道消息传大众将在美国和欧洲停售帕萨特,这是几个意思?
- 就业政策|
- 怎样评价3月10日起外资企业不能在中国大陆提供视听服务这一消息
- 知乎上关于人生经验的介绍是否可能对青少年造成潜在危害
- 像知乎豌豆夹这种新兴互联网公司发展的实际状况咋样
- 只看报纸、杂志、知乎、微博等文字而很少阅读书籍的人,和喜欢看书的延迟接受信息的人,哪种会比较优秀呢
