Что делает служба заказа? - PullRequest
0 голосов
/ 02 июля 2018

Я хотел бы спросить вас кое-что о заказе услуг (заказ сервисных узлов).

Я понимаю, для чего предназначен сервис заказов и как они работают (BFT-SMaRt). Однако то, с чем меня смущают, это ...

  1. Служба заказа предназначена для отказоустойчивости. Я понятия не имею, к какой вине они должны быть терпимы. Они только для заказанных транзакций в блоке? Если так, что произойдет, если транзакции в блоке не упорядочены в хронологическом порядке?

  2. Подделанные транзакции и недействительные транзакции в блоке будут обнаружены одноранговыми узлами, и они никогда не обновят регистр с этими транзакциями. Зачем нам тогда заказывать услугу? Если они не могут обнаружить их, не заказывая услугу, как служба заказа помогает коллегам обнаружить их?

  3. Это то, с чем я на самом деле запутался. Проверяют ли сервисные узлы что-нибудь? Не могли бы вы сказать мне, что делает служба заказа? (Что мы можем получить от службы заказа? Или что обеспечивает служба заказа?)

Я думаю, что это такие основные вопросы, но мне все еще трудно понять их.

Не могли бы вы сказать мне ответы на мои вопросы? Буду очень признателен, если вы ответите мне. Спасибо!

Ответы [ 2 ]

0 голосов
/ 06 июля 2018
  1. Служба заказа предназначена для отказоустойчивости. Я понятия не имею, к какой вине они должны быть терпимы. Они только для заказанных транзакций в блоке? Если так, что произойдет, если транзакции в блоке не упорядочены в хронологическом порядке?

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

  1. Подделанные транзакции и недействительные транзакции в блоке будут обнаружены одноранговыми узлами, и они никогда не обновят регистр этими транзакциями. Зачем нам тогда заказывать услугу? Если они не могут обнаружить их, не заказывая услугу, как служба заказа помогает коллегам обнаружить их?

Нам нужен сервис заказа, чтобы навязать общий порядок транзакций. Также сервису заказа на самом деле не нужно, чтобы одноранговые узлы обнаруживали недействительные транзакции / поддельные транзакции. Одноранговые узлы, использующие многозначное управление параллелизмом для обнаружения одновременных модификаций, основанных на текущем состоянии db, чтобы быть порядком честных транзакций, также имеют здесь значение. Кроме того, коллеги проверяют выполнение политики одобрения.

  1. Это то, с чем я на самом деле запутался. Проверяют ли сервисные узлы что-нибудь? Не могли бы вы сказать мне, что делает служба заказа? (Что мы можем получить от службы заказа? Или что обеспечивает служба заказа?)

Заказ сервисных узлов (OSN) проверяется всякий раз, когда у клиентов есть соответствующие записи каналов чтения / записи. И снова, чтобы завершить, сервис заказа должен определить общую семантику заказа по транзакциям, представленным в него. Служба заказа является подключаемым компонентом, и фактически можно использовать любой из доступных согласованных алгоритмов. В настоящее время существует служба заказа на основе Kafka, которая предоставляет гарантии CFT (Crash-Fault-Tolerant), в настоящее время ведется работа по обеспечению реализации службы заказов с поддержкой BFT (Byzantine-Fault-Tolerant).

0 голосов
/ 04 июля 2018

Служба заказа управляет несколькими каналами. На каждом канале он предоставляет следующие услуги:

(1) Атомная трансляция для установления порядка транзакций, осуществления трансляции и доставки вызовов.

(2) Переконфигурирование канала, когда его члены изменяют канал, передавая транзакцию обновления конфигурации

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

Вы можете сослаться на http://vukolic.com/fabric.pdf

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...