澎湃新闻
静态视频文件应优先确认响应头是否支持 Range 请求,并检查播放器是否收到正确的 Content-Lengt🔑h、C🌅ontent-Range 和 Accept-Ranges。视频文件通常不适合再使用 gzip 压缩,重复压缩会增加 CPU 消耗,却很难带来有效体积下降。
nginx100%video100% 故障处理应从“确认指标”开始,而不是先复制一份通用 Nginx 配置。下面的顺序适合线上出现🎵视频卡顿、服务器负载突然升高⭐或出口流量异常时使用。
HLS 切片缓存应按照内容类型设置不同策略。已经生成且不会变化的历史⭐分片可以使用较长缓存时间,正在更新的播放列表需要较短缓存时间,否则播🎉放器可能拿到过期清单或重复请求同一内容。
如果 Nginx 视频服务已经出现播放卡顿、响应变慢、服务器负载升高,优先查看 CPU 使用率、出口带宽、磁盘 I/O、活跃连接数和错误日志。静态 MP4 大文件下载、HLS 或 DASH 小切片请求、反向代理直播流,产生高负载的原因并不相同,不能使用同一套配置直接处理。
HLS 或 DASH 视频服务的压力结构与单个 MP4 下载不同。播放器会连续请求 m3u8、mpd、ts、m4👍s 或其他媒体分片,文件数量更多、请求频🌺率更高,短请求集中出现时,连接和访问日志可能先达到瓶颈。
静态 MP4 文件由 Nginx 直接发送时,主要压力通常落在网卡和磁盘,🎵而不是视频编码本身。Nginx 不会因为“理解视频内容”而自动完成转码;如果 CPU 明显升高,需要进一步检查 TLS 加密、代理转发、日志、限速模块或异常请求。
worker_processes 通常可以根据 CPU 核数🌺和实际压测结果设置,worker_connections💎 只代表单个工作进程可管理的连接规模,不等同于可承载的观看人数。文件描述符上限、内核连接队列、带宽上限和上游服务能力同样需要匹配。