问: 为什么视频缓冲完毕,可以播放多于控制数量视频窗口?(说视频缓冲完毕, token 已经释放 ,但是不是很了解这个过程)

来源:4-7 验证streamHandler

renevy

2019-10-29

前提

  • 后端限制2 个bucket chan, 打开2个视频窗口, 其中1个视频缓冲完毕, 再开2个窗口,这2个新的窗口不会再占用bucket chan.

问题

  • 新开的窗口为什么不会再占用 chan ?
  • 新开的窗口怎么知道视频缓冲完毕了呢 ?
  • F12控制台看不出,大概是个什么过程,能简单说下吗?
    (抱歉,不是后端出身)
写回答

1回答

艾文西

2019-11-03

每一个新接入的链接都会从token bucket拿到一个token,这个token单属于当前的链接。所以如果缓冲完毕,链接会被自动终止,token自然就会释放。那么新来的链接就可以重新使用这个被释放回去的token。类似于线程池。

新开的窗口是不知道的,如果有已开窗口缓冲完自然链接会释放,token也会释放,新开的就会获取到这个释放的token而打开成功;反之,则会抛出链接过多的错误。

0
1
renevy
谢谢.
2019-11-07
共1条回复

Go语言实战流媒体视频网站,高效学习Go高性能开发

从零开始,全面掌握Go语言编码的架构风格和开发Web的关键技能

996 学习 · 268 问题

查看课程