消息队列根据负载自动调节推送速度

2015 年 7 月 24 日
 LeoWA

采用的是Swoole +Redis 做MQ的,应用场景是消息队列通知Client下载视频广告,由于各个Client所在地的网速等不同,视频分发服务器的带宽也无法承担大量的Client同时下载,因此要根据视频分发服务器的压力带宽等综合因素,动态的调节消息队列的推送。现在就是没有很好的思路来解决这个动态调节推送速度问题,希望能在V2有高人指点一下。。。。

4383 次点击
所在节点    PHP
6 条回复
pi1ot
2015 年 7 月 24 日
消息队列就是用来解耦生产和消费的,消费不了的就慢慢消费啊,有什么问题?
LeoWA
2015 年 7 月 24 日
@pi1ot 主要是,如果Client的量大的话,同时进行视频下载会变得非常慢,不同地区的下载速度可能又不一致,需要动态的调节推送速度。。。。
linshuping
2015 年 7 月 24 日
令牌桶
roricon
2015 年 7 月 24 日
你得视频分发服务器也是分布式的么?
LeoWA
2015 年 7 月 24 日
@linshuping 多谢,我去看看相关资料
@roricon 视频服务器现在暂时不是分布式的
roricon
2015 年 7 月 24 日
如果在client端做流量控制的话,我觉得会比较麻烦,在分发端读取队列然后push到client端感觉实现起来会比较简单
还有简单粗暴的解决方式,把要分发的视频文件放到云存储上,这样也就不需要做流控了……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/208050

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX