заказчик ткани Hyperledger для разных сетей

У меня есть две разные и отдельные сети. у одного две организации с двумя заказчиками, а у второго три организации с тремя заказчиками. если я хочу, чтобы все пять заказов были в типе = Raft для обеих сетей, как мне его настроить?

Я знаю, что заказы могут работать с несколькими каналами, но как насчет нескольких сетей? (Я предполагаю, что проблема связана с блоком Genesis)


person Pouya Shojaei    schedule 08.04.2020    source источник


Ответы (1)


Насколько мне известно, в каждой сети есть только один канал обслуживания заказов, чья цепочка начинается с генезис-блока. В orderer.yaml General.GenesisFile принимает только один файл.

Так что я бы сказал, что это невозможно. Один и тот же узел/процесс заказчика посещает только один канал обслуживания заказов и, следовательно, одну сеть.

Вы можете установить единственную сеть, которая использует другое подмножество ордеров на канал, что на практике похоже на то, что вы хотите. Вы можете настроить сеть с 5 организациями и 5 заказчиками, с общим каналом обслуживания заказов (который отслеживает существующие организации, заказчиков и каналы) и различными подмножествами заказчиков и организаций для каждого канала приложения.

В противном случае вам придется развернуть разные процессы заказа, которые на самом деле являются разными узлами заказа.

person kekomal    schedule 08.04.2020
comment
Приведенный выше ответ в основном правильный. С помощью заказа на основе Raft вы можете создать единый кластер службы заказа со всеми узлами Raft, определенными в системном канале, а затем, когда вы создаете каналы приложений, вы можете указать подмножество узлов заказа на канал приложения (необходимо убедиться, что существует достаточно узлов на канал для достижения консенсуса и поддержки ваших требований к отказоустойчивости) - person Gari Singh; 09.04.2020
comment
Спасибо вам обоим. @Gari_Singh: как насчет использования упорядочения на основе Kafka? - person Pouya Shojaei; 11.04.2020