Корда 4.0 - нотариус в кластере для высокой доступности - PullRequest
1 голос
/ 20 мая 2019

Я пытаюсь разработать приложение на Corda V4.0, и мы используем клиентский RPC API для проведения теста (с использованием DriverDSL).

Мое решение имеет кластер Raft с 2 нотариусами для проверки HA. Я также реализовал решение с наблюдателем (в нотариальном узле), чтобы нотариус записал все транзакции в своем хранилище.

Когда я отправил пару транзакций, поведение было не таким, как ожидалось: некоторые транзакции были записаны в нотариальном кластере 1, а другая транзакция была записана в нотариальном кластере 2.

Это нормально? Я ожидал, что все транзакции будут сохранены в обоих нотариальных кластерах, в противном случае Как Corda разрешает HA?

Спасибо

1 Ответ

1 голос
/ 05 июня 2019

Мы задали этот вопрос в службе поддержки Corda в режиме реального времени [1], и мы получили ответ:

Поведение является ожидаемым для Corda.Единственные данные, реплицируемые в нотариальном кластере, необходимы для нотариального заверения.Эта встроенная поддержка кластера не предназначена для HA.Для реализации HA они предложили нам использовать балансировщик нагрузки и чтобы у нас было два или более узла, которые опубликовали в качестве общедоступного IP-адреса IP-адрес балансировщика нагрузки.Оба узла должны использовать одну и ту же базу данных (возможно, Postgres).

Таким образом, HA должен быть разрешен за пределами Corda.Также они предложили нам взглянуть на документацию «Развертывание высокой доступности в горячем и холодном состояниях» в Corda Enteprise [2], в частности, раздел по настройке балансировщика нагрузки.

  1. https://www.corda.net/participate/community.html
  2. https://docs.corda.r3.com/hot-cold-deployment.html#configuring-the-load-balancer
...