Назад | Перейти на главную страницу

Репликация Amazon RDS в EC2

Возможный дубликат:
Можно ли использовать экземпляр EC2 RDS MySQL в качестве подчиненного устройства внешнего мастера?

Мое приложение с интенсивным чтением должно масштабироваться по горизонтали. Он будет развертываться различными клиентами с помощью Amazon EC2. Моя первоначальная мысль заключается в том, что в базовой настройке будет использоваться один экземпляр RDS и один экземпляр EC2. Экземпляр EC2 (c1.medium) будет запускать веб-сервер и локальную реплику чтения MySQL сервера RDS. Приложение настроено на использование сервера RDS для записи и localhost для чтения. При использовании группы автомасштабирования большее количество экземпляров c1.medium EC2 загружается в соответствии с загрузкой. Каждый новый экземпляр EC2 будет иметь свои собственные локальные реплицированные данные mysql для чтения.

Теперь вопрос: могу ли я подключиться к RDS для создания локальных реплик чтения?

Очевидной альтернативой является загрузка дополнительных официальных узлов реплик чтения с использованием RDS API, но мне это не нравится, потому что тогда мне нужно будет масштабировать с шагом 2 машины вместо 1, что дороже. Кроме того, я предпочитаю, чтобы запросы чтения mysql были локальными из-за задержки.

Обновление / уточнение

Хотя я бы интерпретировал связанный и процитированный ответ форума AWS относительно Репликация без RDS на RDS в обе стороны уже (иначе они, вероятно, упомянули альтернативу), связанный вопрос, явно спрашивающий о Использование RDS в качестве мастера репликации на сегодняшний день также не решена.


К сожалению, это все еще не поддерживается Amazon RDSсм. ответ drcursor на аналогичный вопрос Можно ли использовать экземпляр EC2 RDS MySQL в качестве подчиненного устройства внешнего мастера?:

По состоянию на февраль 2011 года это все еще не поддерживается, Экземпляр RDS в качестве подчиненного устройства репликации:

Репликация без RDS на RDS в настоящее время не поддерживается [...]. Тем не менее, мы зарегистрируем ваш интерес для нашего будущего планирования дорожной карты.

Почему бы вам просто не использовать реплики чтения RDS для установки меньших экземпляров для чтения и оставить главный RDS для записи? Похоже, что ваша система уже разработана для этого. Не существует простого способа настроить репликацию экземпляров RDS без повторных mysqldump и последующего локального повторного импорта. Если ваше приложение выполняет правильное внутреннее кэширование данных, ему не нужно масштабировать 1: 1 для реплик чтения. Если кеширование данных в приложении настолько плохое, что у вас должно быть соотношение 1: 1, я бы вернулся и переоборудовал приложение или изучил возможность использования memcache (ElastiCache) для промежуточного хранения кэшированных данных из чтения RDS.