通过HTTP流调整Linux使其在10 Gbps网卡上达到最高性能。

通过HTTP流调整Linux使其在10 Gbps网卡上达到最高性能。

这篇文章的想法是分享经过将近2个月的调查和1年的生产使用后发现的经验和信息。

我发现许多关于如何为HTTP流提供10Gbps或类似流量的大量流量的文章,但是这些文章都没有分享他们为实现这一目标而应用的Linux OS调整。

就我而言,我们遇到了一个额外的挑战,我们使用P2P设置,使服务器命中率比标准HTTP(HLS)流高3倍左右……

当使用P2P时,需要设置较小的块,并在播放列表中设置大量项目。

HLS规范说,您需要10秒钟的块,其中将近3个项目放入播放列表。 为了在P2P中获得良好的共享率,需要将3秒的块和20个项目放入播放列表中。

作为HTTP Server,我们使用Varnish,它缓存了Origin的所有请求。

/etc/sysctl.d/20-streaming-tuning.conf

/etc/security/limits.conf

/etc/rc.local

在这里,您需要根据您的设置将接口名称更改为正确的名称,在我们的服务器设置中,公用网卡为“ p5p1”

这里是一些有关生产中已达到满负荷的屏幕截图: