Размещенное отказоустойчивое (реплицированное) решение memcache в облаке amazon ec2?
Кто-нибудь предлагает отказоустойчивое (реплицируемое) решение memcache, которое размещено в amazon ec2, не требует обслуживания и работает с предоставлением только одного IP?
Я знаю, что Amazon предлагает ElastiCache. Но это все еще довольно низкий уровень и имеет некоторые недостатки:
- он нуждается в обслуживании (например, определить количество экземпляров, управлять IP-адресами и т. д.)
- это не делает репликацию (я знаю о клиентских библиотеках, которые делают это. Но это не так безопасно, как решение на стороне сервера)
- он не работает с одним предоставленным IP-адресом
- в настоящее время не предлагается в ЕС West (Ирландия) (но я уверен, что это придет)
- токы только бьют (изменится в будущем)
Я мечтаю о размещенном сервисе, который дает мне один IP-адрес и "просто работает, всегда".
Спасибо марсель
1 ответ
Memcache (и ElastiCache по расширению) не является безопасным, постоянным хранилищем данных. Это механизм кеширования. Его цель - повысить скорость работы приложений. По своей конструкции memcache будет отбрасывать старые данные при поступлении новых данных, если достигнут предел памяти.
Репликация и "отказоустойчивость" не являются частью системы memcache.
По этой причине ваше приложение не должно полагаться на имеющиеся данные. Вместо этого, он должен быть счастлив, что он ударил кешированные данные, и хранить данные для кеширования, когда не ударил
Если вы ищете "простой" интерфейс клиента memcache, в зависимости от языка разработки, вы можете проверить ServiceStack (www.servicestack.net). У них есть библиотека.NET с именем ServiceStack.Caching, которую вы можете использовать в качестве клиента memcache. Я не пробовал, но я бы предположил (и надеюсь), что он работает и с ElastiCache.