написать скрипт, который смотрит в pid apache и проверяет, если такой процесс, если нет - перезапускает apache, засунуть его исполнение (каждые N) в планировщик, например в cron.
>Надо выяснить и устранить причины падения, а не костыли прикручивать.
доо, особенно верно про апач, у которого 90% падений заканчивается многозначительным сообщением «Caught SIGTERM, going to shutdown» и «Unable to open logs».
спасибо, но вы только что отлично прометанировали. упомянутую мессагу апач пишет ВСЕГДА, если фейлится на старте, в т.ч. тогда, когда логи доступны на чтение/запись. не надо заниматься метанацией.
Пока проблема не поймана, костыли будут мешать.
а теперь представим себе продакшен с 1000 сайтов (суммарная посещаемость - 150-200k уников/сут.) и единственным воркером апача.
Что-же помешает сделать копию сервера и отловить ошибку там? Что мешает написать патч для исправления некорректного сообщения об ошибке? Уж не упомянутые ли метановые скопления?
>Что-же помешает сделать копию сервера и отловить ошибку там?
ммм, отсутствие свободного бабла на поднятие еще одного сервера? а может быть, отсутствие свободного времени на копирование всех сайтов на второй сервер и лоад-тестинг? а может быть, понимание того простого факта, что лоад-тест точно так же поставит раком второй сервер?
Что мешает написать патч для исправления некорректного сообщения об ошибке?
в исходники апача посмотри сначала. потом прикинь, сколько времени займет написание патча. потом еще прикинь, как ставить патченую версию на боевой сервер (про тестовый - см. выше). посчитай, сколько в итоге денег это будет стоить, и пересмотри свои идеалистические взгляды не мир.
вот вроде умный человек, а ведет себя, как админ локалхоста.
ммм, отсутствие свободного бабла на поднятие еще одного сервера?
На локалхост - бесплатно.
отсутствие свободного времени на копирование всех сайтов на второй сервер
Набрать «cp» в консоли стало занимать больше времени, чем засирание форумов?
и лоад-тестинг?
Вы же не вручную это делаете?
понимание того простого факта, что лоад-тест точно так же поставит раком второй сервер?
Не цель ли это при дебаге?
в исходники апача посмотри сначала. потом прикинь, сколько времени займет написание патча. потом еще прикинь, как ставить патченую версию на боевой сервер (про тестовый - см. выше). посчитай, сколько в итоге денег это будет стоить, и пересмотри свои идеалистические взгляды не мир.
Я и не говорил, что этот путь будет оптимальным с экономической точки зрения в каком-то конкретном случае. Почти весь бизнес на костылях стоится, потому что так дешевле. Отсюда и огромное количество быдлокода в проприетарных продуктах.
вот вроде умный человек, а ведет себя, как админ локалхоста.
Набрать «cp» в консоли стало занимать больше времени, чем засирание форумов?
сервер в Германии, я в Минске. посчитайте, за сколько по времени я перелью полтерабайта через 2Мбит/с канал.
и на моем локалхосте железо довольно-таки сильно отличается от серверного. к тому же, не исключено, что проблема i386-специфична (на локалхосте amd64).
Вы же не вручную это делаете?
но мне нужно потратить время на изучение методик и софта для нагрузочного тестирования. ab здесь неприменим.
Не цель ли это при дебаге?
«поставить раком» - это когда лоады за сотню и ssh-подключение занимает 5 минут.
Я и не говорил, что этот путь будет оптимальным с экономической точки зрения в каком-то конкретном случае. Почти весь бизнес на костылях стоится, потому что так дешевле. Отсюда и огромное количество быдлокода в проприетарных продуктах.
именно что дешевле. затраты на дебаг апача несоизмеримо выше затрат на aptitude install monit и пятиминутное конфигурирование.