Я создаю небольшое веб-приложение, которое изначально будет размещено на экземпляре EC2 Micro (который сильно ограничен памятью, 613 МБ ОЗУ). Когда я его настраиваю, он запрашивает компонент RAM, в который он загружает все данные базы данных, которые он может хранить.
Поначалу это не будет проблемой, поскольку, по моим оценкам, для данных моих стартовых клиентов не потребуется в общей сложности более 20 МБ.
Однако, если все пойдет хорошо, я могу перейти на более крупный экземпляр, а позже я могу захотеть кластеризовать выделенные виртуальные машины с мембраной.
У меня такой вопрос: как мне настроить его сейчас, чтобы я не загонял себя в угол, когда хочу перейти на:
Как будут выглядеть пути обновления, когда я достигну этих перекрестков?
На самом деле намного проще добавлять узлы (и узлы, похожие на существующие узлы), чем менять узлы, когда вы находитесь в производстве, хотя вы можете сделать и то, и другое. Кроме того, преимущество распределения данных по узлам состоит в том, что вы получите распределение данных И ввод-вывод. Поскольку Membase очень быстрая, она обычно сначала подключается к сети. Кроме того, большее количество узлов позволяет реплицировать данные и, таким образом, повысить шансы на устранение любого сбоя узла в кластере без простоя приложений. Поэтому я бы порекомендовал вам начать с небольшого узла (возможно, микро ... но, возможно, небольшого) и увеличивать его за счет добавления узлов. Перебалансировать новые узлы в кластере несложно.