Максимальное использование веб-сервера Apache из-за зависания процессов в состоянии D

У меня есть веб-сервер Apache 2.2.3, работающий на 8-ядерном ВМ с 8G Ram.

Во время нагрузочного теста веб-сервер перестал отвечать, и средняя нагрузка возросла до 1000.

Когда я запускаю команду Top, я вижу, что большое количество процессов httpd застряло в состоянии "D". Я сделал некоторый поиск, и, кажется, статус "D" означает непрерывный сон.

Я связал один из застрявших процессов и ниже вывод:

# strace -p 27843
Process 27843 attached - interrupt to quit
fcntl(34, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=1}

Затем я сделал lsof, чтобы проверить, что такое fd 34 и ниже вывод:

httpd   27843 apache   34u   REG      8,1        0   131756 /tmp/.xcache.0.0.1292616489.lock (deleted)

Кажется, это может быть связано с проблемой блокировки с xcache, но как мне продолжить устранение неполадок?

0 ответов

Другие вопросы по тегам