为什么 Nginx 使用此配置提供静态文件服务速度这么慢,而 lighttpd 却很快?

为什么 Nginx 使用此配置提供静态文件服务速度这么慢,而 lighttpd 却很快?

我们想将所有服务器从 lighttpd 切换到 nginx,但是虽然 Web 服务器迁移进展顺利,但静态文件服务器迁移却是灾难性的。

使用 nginx 的以下配置,我们最终发现图片加载延迟长达 10 秒:

共有 4 个站点,每天有大约 12 万名访客,他们大量观看流媒体视频和图片。

我们得到的提示是,重启 nginx 后,图片加载速度总是很快。CPU 或内存消耗总是很小,所以我们考虑了磁盘问题。我们尝试调整文件描述符限制,但没有任何变化。

我们切换回 lighttpd 并且再次恢复正常,图片几乎可以立即加载。

我们知道我们做错了什么,但那又怎么样呢?只需维护一台服务器设置就好了,而且 nginx 确实比 lighttpd 更容易设置。

您在此处看到的配置文件适用于专用于静态文件和视频流(使用 mp4 插件进行编译)的虚拟机上的 nginx。

答案1

我最近在使用 nginx 时也遇到了类似的情况。我们当时正在提供静态文件,但随着时间的推移,服务器速度会变慢,最终崩溃。原来是 nginx 将下载内容缓存到磁盘,最终导致磁盘空间溢出,进而导致服务器崩溃。

并不是说这是你的问题,不幸的是我目前没有我们应用的修复程序,但也许它可能会为你指明正确的方向。

相关内容