У нас есть существующее веб-приложение, которое использует Postgresql 9.0 и PGPool-ii. Я думаю о миграции нашей инфраструктуры в Amazon EC2 и был вдохновлен следующей ссылкой: http://aws.typepad.com/aws/2008/12/running-everything-on-aws-soocialcom.html, которая использует подобную архитектуру.
Поскольку Amazon RDS не поддерживает PGSQL, мы будем придерживаться PGPool-ii, чтобы балансировать запросы на разных серверах БД и поддерживать их синхронизацию между собой.
Итак, мы планируем развернуть 3 внешних веб-сервера, которые будут содержать следующее: - Веб-сервер + PHP-код - PGPool-ii
Тогда у нас было бы 2 сервера баз данных на отдельных экземплярах Amazon только с PGSQL. Эти 2 PG-сервера будут использоваться PGPools, расположенными на 3 внешних серверах.
Мой вопрос в том, что я не знаю, достаточно ли это решение, так как несколько PGPool получат доступ к нескольким серверам PGSQL. Большинство примеров PGPool демонстрируют один PGPool, который использует N базовых PGSQL-серверов. Является ли хорошей практикой развертывание экземпляра PGPool на каждом веб-сервере?
Если нет, есть ли другая/лучшая архитектура, чтобы избежать использования SPOF с помощью Amazon?
Большое спасибо за ваши ответы.