Ответ 1
-
Да, половина данных на сервере a, а половина на сервере b будет распределенным кешем. Существует множество способов распространения данных, хотя, по-видимому, наиболее популярен какой-то хэширование ключей.
-
Термины server и node, как правило, взаимозаменяемы. A node, как правило, является одной единицей некоторой коллекции, которую часто называют кластером. Сервер, как правило, представляет собой единое целое. В erlang вы можете запускать несколько экземпляров среды выполнения erlang на одном сервере и, следовательно, у вас будет несколько узлов erlang... но обычно вы хотите иметь один node на сервер для более оптимального планирования. (Для нераспределенных языков и платформ вам необходимо управлять своими процессами на основе ваших потребностей.)
-
Если сервер опускается, и он является сервером кэш-памяти, тогда данные должны будут поступать из исходного источника. EG: Кэш обычно представляет собой базу данных на основе памяти, предназначенную для быстрого поиска. Данные в кеше сохраняются только до тех пор, пока они будут использоваться регулярно и в конечном итоге будут очищены. Но для распределенных систем, где вам требуется настойчивость, общий метод состоит в том, чтобы иметь несколько копий. EG: у вас есть серверы A, B, C, D, E и F. Для данных 1 вы должны поместить их в A, а затем сделать копию на B и C. Couchbase и Riak. Для данных 2 он может быть на B, а затем копируется на C и D. Таким образом, если какой-либо один сервер опускается, у вас все еще есть две копии.