У нас есть веб-сервер, на котором мы собираемся запустить несколько приложений. Все они будут совместно использовать базу данных и серверы memcached, но у каждого приложения есть своя собственная база данных mySQL, и все ключи memcached для каждого приложения имеют префикс.
Возможный сценарий:
Если сервер memcached в нашем кластере выходит из строя, мы хотим, чтобы кто-то (действующий системный администратор) автоматически связывался с помощью push-уведомлений по электронной почте / iphone или любым другим подходящим способом.
Если мы собираемся установить 150 идентичных приложений для наших клиентов на наших серверах, и сервер memcached умирает - все 150 приложений индивидуально узнают об этом и обратятся к нашему системному администратору, который наверняка подумает о получении новая работа, где он или она не собираются просыпаться, получая 150 сообщений, отправленных в 4:15 утра.
Возможное решение:
Одна из идей состоит в том, чтобы настроить внешний сервер для обработки ошибок, который получает отправленный запрос $ _POST или cURL и обрабатывает хранение сообщения об ошибке в зависимости от серьезности фактического сообщения об ошибке. Конечно, при получении сообщения об ошибке он будет проверять, что, если тот же сервер memcached уже был зарегистрирован как офлайн, не было бы необходимости спамить системного администратора дополнительными напоминаниями ...
Вопросы:
- Какой хороший подход к обработке ошибок?
- Как крупные парни в отрасли справляются с этим?
Спасибо!