Подключение к кластеру Cassandra

Я только начинаю с Кассандрой и у меня есть несколько вопросов. Я собираюсь развернуть кластер из 4 узлов на AWS согласно документации DataStax ( http://www.datastax.com/docs/datastax_enterprise3.1/install/install_dse_ami).

Как только у меня будет запущен и запущен этот кластер из 4 узлов, я буду создавать простой сервер LAMP, который (надеюсь) будет выполнять запросы к кластеру. Я буду использовать Cassandra-PDO для общения ( http://code.google.com/a/apache-extras.org/p/cassandra-pdo/). В итоге получается 5 серверов.

Например:

192.168.0.1 - Кассандра1
192.168.0.2 - Кассандра2
192.168.0.3 - Кассандра3
192.168.0.4 - Кассандра4
192.168.0.5 - Стек ЛАМПЫ

Как мне сбалансировать все мои запросы от сервера LAMP к моему кластеру Cassandra? В примере CPDO они упоминают следующее:

$dsn = "cassandra:host=192.168.0.1;port=9160,host=192.168.0.2,port=9160";

Тем не менее, что мне делать, если я не знаю, что такое IP? Что произойдет, если я добавлю новые узлы? Старые узлы выходят из строя и т. Д.? Нужно ли как-то самостоятельно балансировать запросы?

Любой совет по поводу вышеизложенного будет принята с благодарностью!

ура

1 ответ

Решение

Этот pdo проверяет первый доступный узел в списке. Если кажется, что первый узел не работает, он использует второй... Вы должны самостоятельно балансировать нагрузку (в нашем случае мы перетасовываем список узлов). Но будь осторожен с этим. Узел, к которому вы присоединяетесь, не является обязательным узлом, который обрабатывает строку, которую вы хотите прочитать / записать. Это просто координатор, который обрабатывает запрос. Если вы добавляете новые узлы, вам нужно добавить его ip, если вы хотите использовать его в качестве возможного координатора, но это не влияет на работу самого кластера.

Другие вопросы по тегам