首頁  >  問答  >  主體

linux - Nginx做视频缓存,怎样边回源边响应给用户

用Nginx的proxy功能,在客户请求一个70mb的文件时,Nginx用1mb/s的速度去视频网站下载这个mp4文件,客户那里一直黑屏,直到70s后,Nginx以8mb/s的速度将完整的mp4文件传给了用户,视频才播放起来。 这样做的话,面对一个未缓存的新视频,第一个访问的用户要等70s才能看,有点麻烦。请问有什么好的解决方案吗?目前想的是用爬虫来假装第一个用户,但这样也只是解决了热门视频的问题。 请不吝赐教

大家讲道理大家讲道理2742 天前750

全部回覆(1)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 14:56:16

    proxy_buffering off

    nginx預設開啟proxy_buffering ,它會盡量讀取responses資料並暫存下來,等接收完之後再傳送給客戶。
    關閉proxy_buffering 後,nginx會將獲取的mp4資料立即發送給客戶,客戶收集到足夠播放的元資料後即可開始播放,一般會很快(如果文件本身不適合流媒體播放那又是另一回事了,但這種情況已經很少見了)

    SF首答,本弱雞如果錯漏還望指正。

    參考文件:http://nginx.org/en/docs/http...

    回覆
    0
  • 取消回覆