线上只有一台直播服务器,现在是商务打算给另外一个公司直播,一台服务器带宽不能满足,业务,总监,运维(我自己)沟通明确了需求,再上线3台放在前端用做缓存ts后缀的视频文件。
业务明确了,技术问题只能自己搞定,之前用的squid 加上新版性能不行,而且配置繁琐,我自己都一年多没配置,好多都忘记了,重新学也的花费不少时间,最后打算用自己熟悉的nginx做。
我以前做nginx缓存是挂的perl代码,强制缓存各大视频网站内容,没有定期失效删除这种功能。现在这个直播业务需要设置缓存时间,业务给的时间有限,有点拙计;我自己没配置过,找proxy_cache相关资料,终于还是搞定了,可以缓存直播的ts文件,并且自动删除失效文件,还是可以满足业务。
client_body_buffer_size 512k; proxy_connect_timeout 5; proxy_read_timeout 60; proxy_send_timeout 5; proxy_buffer_size 16k; proxy_buffers 4 64k; proxy_busy_buffers_size 128k; proxy_temp_file_write_size 128k; proxy_temp_path /data/tmp; proxy_cache_path /data/proxy_cache_dir levels=1:2 keys_zone=cache1:200m inactive=10m max_size=30g; server { listen 192.168.1.6:80; #server_name ; access_log logs/ts.log access; location ~* /tss/vod/ { proxy_cache cache1; proxy_ignore_headers Set-Cookie Cache-Control; proxy_cache_valid 200 304 10m; proxy_cache_key $host$uri$is_args$args; proxy_pass http://192.168.1.2; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
下面是一张效果图:
本文出自 “立成为网络安全工程师” 博客,请务必保留此出处http://luyafei.blog.51cto.com/1092421/1734767
原文:http://luyafei.blog.51cto.com/1092421/1734767