2016-12-12 16 views
1

Я с интересом прочитал fabric proposal on consensus architecture, и у меня есть вопрос о консенсусном сервисе. Мне кажется, что это фактически единственная услуга, которая гарантирует, что все равные получают блоки в порядке, который он решает. Похоже, что он должен быть запущен одной идентифицированной и доверенной организацией в любой момент времени для данной цепочки. Не похоже, что услуга может быть распределена. Это правильно, или я неправильно понял?Может ли распространяться служба консенсуса Fabric Hyperledger?

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

ответ

3

UPDATE: Кафка Заказчик теперь готовое к производству:

Индивидуальный заказ услуги (тестирование): Служба заказа соло предназначено быть чрезвычайно просты в развертывании, непроизводственный заказ обслуживание. Он состоит из одного процесса, который обслуживает всех клиентов, поэтому согласие не требуется, поскольку существует единый центральный орган. Соответственно, нет высокой доступности или масштабируемости. Этот делает соло идеальным для разработки и тестирования, но не для развертывания.

служба заказа Кафка на основе (производство): Службы заказа Кафка на основе использует систему Кафка паба/суб для выполнения заказа, но оборачивает это в известном определении ab.proto так что равноправного заказчик клиентский код не должен быть написан специально для Kafka. В настоящее время Kafka является предпочтительным выбором для производства , которые требуют высокой пропускной способности и высокой доступности, но не требуют византийской отказоустойчивости.

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


Консенсус обслуживание в Hyperledger Ткань представляет собой подключаемый модуль. Существует information около 3 объявленной реализации:

Solo: Заказчик Сольного Заказчика предназначен быть чрезвычайно прост в развертывании, непроизводственный заказчиком. Он состоит из одного процесса, который обслуживает всех клиентов, поэтому никакого «консенсуса» не требуется, поскольку существует единый центральный орган . Соответственно нет высокой доступности или масштабируемости . Это делает соло идеальным для разработки и тестирования, но не используется. Соло-заказчик зависит от исходной сырой книги.

Кафка Заказчик (заявлено): заказчика Кафки использует систему PubSub Кафка для выполнения заказа, но оборачивает это в известном определении ab.proto так, что клиентский код заказчика партнера не должен быть записан специально для Kafka.В реальных условиях развертывания ожидается, что прото-сервис Kafka будет связан локально в процессе, так как у Kafka есть собственный протокол проводки . Однако для тестирования или нового развертывания сценариев заказчик Kafka может быть развернут как сетевая услуга. Предполагается, что Kafka станет предпочтительным выбором производственного оборудования , который требует высокой пропускной способности и высокой доступности, но не требует погрешности византийской ошибки. Заказчик Kafka не использует резервную регистрационную колонку , потому что она обрабатывается брокерами Kafka.

PBFT Заказчик (заявлено): PBFT Заказчика использует реализацию ткани PBFT hyperledger на заказ сообщения в византийском отказоустойчивых пути. Поскольку реализация разработана специально для ткани гиперректора , ab.proto используется для проводной связи с заказчиком PBFT . Поэтому необычно связывать заказчик PBFT с одноранговым процессом , хотя это может быть желательно для некоторых развертываний. Заказчик PBFT зависит от исходной сырой книги.

  • Для заказчика Соло (доступно сейчас) заявление «должен быть запущен одним идентифицированы и доверенной организацией» верно.
  • Заказчик Kafka (в разработке) - должен быть развернут распределенным способом.
  • PBFT Orderer - не нашли информации об этой реализации.