为什么Nginx在使用这个configuration提供静态文件时速度太慢,而不是lighttpd?

我们希望将我们所有的服务器从lighttpd切换到nginx,但是当Web服务器迁移正常时,静态文件服务器迁移是灾难性的。

我们结束了长达10秒的加载图片的延迟,使用这个configuration与nginx:

  • 主要configuration: https : //gist.github.com/1089283
  • 现场示例: https : //gist.github.com/1089276

有4个站点,每天大约有12万个访问者,消耗大量stream式video和video。

我们有一个提示是重新启动nginx后,加载图片总是非常快。 CPU或内存消耗总是非常小,所以我们虽然关于磁盘。 我们试图调整文件描述符的限制,但没有改变任何东西。

我们切换回lighttpd,我们又恢复了业务,几乎是瞬间的图片加载。

我们知道我们做错了什么,但是什么? 只需要维护一个服务器就可以了,而且nginx比lighttpd更容易设置。

您在这里看到的configuration文件是针对专用于静态文件和videostream的虚拟机上的nginx(使用mp4插件进行编译)。

我最近和nginx有过类似的经历。 我们提供了静态文件,随着时间的推移,服务器将放慢速度,最终崩溃。 事实certificate,nginx正在caching下载到磁盘,最终填补它,导致服务器崩溃。

不是说这是你的问题,不幸的是我没有我们现在应用的修复,但也许它可能使你在正确的方向。