Apache不可用的超时

我喜欢问,有没有办法为挂起的文件系统设置超时。

例如,如果NFS已经变得陈旧或者有什么问题(这不是关于调整NFS,我更感兴趣的是调整apache),Apache有一个问题,即负载爬过屋顶。

我喜欢遏制这一点。

我看了看

EnableMMAP和EnableSendfile

但我想更多的方法来调整Apache。

感谢布伦特

对不起,你正在寻找的解决scheme是在另一个城堡。

如果NFS挂载(或者你的文档根目录下的文件系统)停止响应,Apache 将会陷入困境,Apache调优对此没有任何帮助。

您需要集中精力监视这些事件,以便在遇到这些问题时收到电子邮件/短信/其他信息。 而且,如果NFS有问题,请以某种方式解决问题,或者切换到其他文档根目录需要的方法。

我知道你说你想调整Apache,而不是NFS。 问题在于任何在磁盘IO上阻塞的进程,Apache或其他任何进程都不会返回。

在NFS的情况下,您可以在挂载点实际控制此行为。 看看man nfs

如果您的NFS服务器hard挂载,如果服务器停止响应,客户端将无限期地等待响应。 结果是你的Apache进程会挂起。 如果你正在写挂载点并且关心你的数据(你希望进程写数据来知道它是否完成),那么hard挂载几乎总是首选。

如果您的NFS服务器是soft安装的,那么客户端最终可能会返回,即使NFS服务器是完全borked。 结合使用timeo NFS安装选项来指定重新传输超时。

如果在运行队列中有很多进程或者在IO上进行阻塞,就像你说的那样,你的加载将会非常高。 允许缓慢或挂起的NFS操作通过soft安装超时将减轻这一点。 但是,您仍然想要设法将这些故障传播给客户端。