采用的是Swoole +Redis 做MQ的,应用场景是消息队列通知Client下载视频广告,由于各个Client所在地的网速等不同,视频分发服务器的带宽也无法承担大量的Client同时下载,因此要根据视频分发服务器的压力带宽等综合因素,动态的调节消息队列的推送。现在就是没有很好的思路来解决这个动态调节推送速度问题,希望能在V2有高人指点一下。。。。
1
pi1ot 2015-07-24 14:39:29 +08:00
消息队列就是用来解耦生产和消费的,消费不了的就慢慢消费啊,有什么问题?
|
2
Mrun OP @pi1ot 主要是,如果Client的量大的话,同时进行视频下载会变得非常慢,不同地区的下载速度可能又不一致,需要动态的调节推送速度。。。。
|
3
linshuping 2015-07-24 15:08:49 +08:00
令牌桶
|
4
roricon 2015-07-24 15:29:43 +08:00
你得视频分发服务器也是分布式的么?
|
5
Mrun OP |
6
roricon 2015-07-24 15:39:54 +08:00
如果在client端做流量控制的话,我觉得会比较麻烦,在分发端读取队列然后push到client端感觉实现起来会比较简单
还有简单粗暴的解决方式,把要分发的视频文件放到云存储上,这样也就不需要做流控了…… |