现象:预定站点因为价格不一致导致预定转化率较低,仅有2.5%,低于行业平均水平。
原因: 消息积压:三方渠道的产品在推送数据量太大,每天接近一亿的时间价格数据,5分钟的 峰值达到两百万,但负责消费时间价格数据的服务器集群仅有4台服务器,消息队列服务 器仅有一套主备服务器,导致消息队列积压,无法实时消费。
解决方案:
Ov9v0DQ8202207272055
针对消息积压: 整体:将消息中间件替换成kafka,提高吞吐率。并且kafka可以方便地建立分布式集
群,动态扩容。
发送端: 发送消息时,根据时间价格地时效性分级,让消费端优先消费高优先级消息。低优先 级队列可以不用实时消费,降低服务器的峰值消息量。
消费端: 扩容consumer的实例数量与主题中的分区数量一致,并且在接收消息后,把消息放 到内存队列,然后启动多业务线程,真正处理消息的业务逻辑。虽然会有丢失消息的 风险,只要不是大范围的宕机,是在业务允许的前提下可以容忍,
效果: 消息队列已经无明显积压,积压一段时间就可以被完全消费掉。
前端预定转化率上升了100%,达到了5%。
难点: 需要切换消息中间件,在前期需要做大量的吞吐率测试,来评估哪个消息中间件更适合现 有团队和业务模型。
点击空白处退出提示












评论