Перед настройкой веб-кластера для достижения высокой производительности и/или отказоустойчивости рекомендуется внимательно прочитать наши методические материалы, посмотреть статьи с примерами архитектур в зависимости от типа и требований веб-проекта.
Не следует сразу пытаться использовать все доступные возможности, предлагаемые веб-кластером и "стрелять из пушки по воробьям". Чем сложнее система, тем, как известно, ей труднее управлять. Рекомендуется взвешенный итерационный подход, при котором архитектура веб-кластера настраивается в несколько этапов, например:
- Изучаем руководство по настройке, статьи и примеры архитектур существующих проектов.
- Настраиваем кеширование данных в memcached, анализируем и выбираем оптимальный размер кеша (например, 128М в каждом запущенном сервере memcached).
- Настраиваем второй сервер приложений, синхронизацию контента с помощью csync (или другой технологии).
- Подключаем ко второму и остальным серверам приложений одну из систем мониторинга.
- Настраиваем балансировщик, SSL-терминацию (если необходимо), режим распределения сессий между серверами приложений: а) сессии общие и хранятся в базе данных, б) сессии пользователей распределяются в зависимости от их IP-адресов и хранятся отдельно и т.д.
- Настраиваем SQL репликацию. При необходимости используем вертикальный шардинг.
- И т.п.
- Необходимо удостоверится, что технические специалисты ознакомились с руководством по настройке веб-кластера и примерами имеющихся архитектур веб-кластерных решений на Битрикс.
- Необходимо удостоверится, что выбранная реализация архитектуры веб-кластера соответствует поставленным задачам по обеспечению доступности и/или производительности: аргументированно выбрано количество серверов приложений, режим работы балансировщика, режим репликации и число серверов базы данных и т.п. Рекомендуется составить мини-ТЗ, описывающее архитектуру веб-кластера с учетом требований данного веб-проекта.