#php #apache #updates
#php #apache #Обновления
Вопрос:
Какой был бы наиболее эффективный способ отправлять обновления на сервер Apache без «выключения» (он же перенаправление всех на страницу обслуживания) на простом LAMP
сервере.
Одна из идей, которая у меня возникла, — использовать .htaccess
который перенаправляет все запросы на один PHP
скрипт, который просто ждет, пока они смогут ответить на запросы, но все соединения останутся активными в течение этого времени. Я не знаю, сколько последовательных подключений может обработать этот сервер.
Какие-нибудь советы?
Спасибо
Комментарии:
1. Я думал, php header, но это сработает только для страниц, на которые вы его разместили. Я также хотел бы знать хорошее решение 😉
2. Не совсем уверен, о чем вы спрашиваете. Вы хотите отправлять обновления скриптов php и перенаправлять всех пользователей на страницу обслуживания во время выполнения этих обновлений? А затем автоматически перенаправлять снова, когда обслуживание завершено?
3. @Mel, на самом деле я хотел бы отправлять обновления на сервер с очень небольшим количеством времени простоя, или вообще без него. Кроме того, я хотел бы найти решение для пользователей, которые фактически используют сайт.
Ответ №1:
Если вам действительно нужно сделать это без простоев — создайте высокодоступную схему, содержащую по крайней мере 2 копии каждого имеющегося у вас ресурса (веб-сервер, сервер БД и т.д.).
Поэтому, когда вам нужно обновить все — просто отсоедините один вебсервер и один сервер базы данных от вашего балансировщика нагрузки и обновите их. После того, как вы это сделаете — подключите их обратно и повторите те же действия с серверами, которые еще не были обновлены.
Комментарии:
1. Это хорошее решение. Но как насчет файлов сеанса или баз данных, которые постоянно обновляются пользователями онлайн? Очень сложно синхронизировать базу данных и поддерживать их синхронизацию, пока я обновляю коды.
2. @Cybrix: да, вам нужно написать свое программное обеспечение и настроить все серверы так, чтобы они могли быть взаимозаменяемыми.