Как приложение на EC2 autodiscover ElastiCache может обнаружить экземпляры?

Скажем, у меня есть веб-приложение, работающее на некотором количестве серверов EC2 со сбалансированной нагрузкой, хранящее и извлекающее метаданные из SimpleDB с большими объемами данных, хранящихся на S3 (в связи с целым ограничением SimpleDB на 1 КБ). Так как S3 довольно высокая латентность и я все равно не хочу делать там тонну запросов, мне понадобится слой кэширования для информации... введите ElastiCache.

Хорошо, поэтому я предоставляю ElastiCache-сервер с конечной точкой X, так что я жестко закодирую X в мое приложение на EC2 и оно будет работать счастливо, пока я не получу несколько сотен тысяч новых пользователей, и внезапно мой кэш-сервер ужасно недоступен для спроса. К счастью, я могу просто запустить несколько новых больших кэш-серверов... но потом я понимаю, что у меня есть конечные точки X, Y, и Z, и мое приложение знает только попробовать X, так что у меня до сих пор есть проблема.

Итак, прямо сейчас я просто пытаюсь обернуть голову вокруг различных кусочков этой головоломки, и я еще не добрался до части с кодировкой, но не будет ли это проблемой? Я прочитал документацию по ElastiCache, и в ней упоминается, что это кластер кэша, но тогда каждый сервер в кластере, кажется, имеет свою собственную конечную точку. Есть ли способ для приложения, работающего на EC2, узнать обо всех кэш-серверах, которые работают, и более того, о том, какой из них содержит данные для определенного ключа? Можно ли попросить кластер в целом хранить или получить часть информации?

7
задан Ty W 16 September 2011 в 05:21
поделиться