我喜欢问,有没有办法为挂起的文件系统设置超时。
例如,如果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
安装超时将减轻这一点。 但是,您仍然想要设法将这些故障传播给客户端。