1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/hyperledger-fabric-sdk-java

Клонировать/Скачать
release_v1.1.0_notes.md 12 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 11:36 5544e15

JSDK 1.1 имеет функции, добавленные после версии 1.0, чтобы соответствовать тем, которые были добавлены в версию Fabric 1.1.

Рассмотрение Fabric v1.0

SDK в основном обратно совместим с Fabric на основе v1.0 со следующими соображениями:

  • Новый сервис событий одноранговых узлов является стандартным для SDK, однако в Fabric v1.0 служба событий одноранговых узлов не поддерживается. Чтобы решить эту проблему в приложениях, подключающихся к Fabric 1.0, необходимо при добавлении или присоединении узла к каналу предоставить опцию PeerRole. Определена роль с PeerRole.NO_EVENT_SOURCE, которая имеет эквивалентную функциональность узла v1.0. Пример этого можно увидеть в End2endIT.java#L732 и в End2endAndBackAgainIT.java#L597.

Функции v1.1 Fabric

FAB-6066 JSDK Channel service for events

Теперь узел Fabric реализует службы событий на том же самом узле, что и одобрение предложений, и больше нет необходимости иметь службу EventHub. Использование событий однорангового узла является предпочтительным способом получения событий. Будущие выпуски Fabric могут не поддерживать Eventhubs. При присоединении или добавлении узлов к каналу по умолчанию узел предоставляет службу событий. Контролируется ли узел как источник событий или нет, определяется параметрами узла при добавлении или присоединении к каналу. Пример этого можно увидеть в End2endIT.java#L732 и в End2endAndBackAgainIT.java#L597.

Узлы могут быть добавлены к каналу с определёнными ролями, чтобы помочь распределить рабочую нагрузку. Роли PeerRoles определены в Peer.java#L328. По умолчанию узлы имеют все роли.

Новые службы событий одноранговых узлов по умолчанию будут возвращать только последний блок в блокчейне. Обратите внимание, что это не следующий блок, который добавляется в цепочку. Теперь приложение может указать как начальный, так и конечный номер блока. Приложения устанавливают эти параметры при добавлении или присоединении узлов к каналу с помощью методов PeerOption startEvents, stopEvents и startEventsNewest, которые являются стандартными. End2endAndBackAgainIT.java#L234-L257 вызывает метод testPeerServiceEventingReplay, который перезапускает канал с разными значениями начала и остановки.

FAB-7652 JSDK filterblock enablement

Fabric поддерживает новые службы событий одноранговых узлов ограничения на то, что события возвращают через ACLs. Блок событий может содержать полный блок или отфильтрованный блок. Приложения, запрашивающие полный блок без полномочий, получат отказ в разрешении. По умолчанию приложения получат полный блок. Чтобы запросить отфильтрованный блок при добавлении или присоединении узлов, приложения могут добавить через PeerOptions.registerEventsForFilteredBlocks. Пример этого можно увидеть. Текст запроса:

Applications that register block listeners need to be written to check for isFiltered()" to know if the block is full or filtered.

Filtered blocks are limited to the following methods.

Перевод:

Приложения, которые регистрируют слушателей блоков, должны быть написаны с проверкой на «isFiltered?», чтобы узнать, полный блок или отфильтрованный.

Отфильтрованные блоки ограничены следующими методами.

Далее идёт текст, который не удалось перевести из-за отсутствия контекста.

Для получения более точного и корректного перевода рекомендуется предоставить больше информации о запросе. JDK добавил поддержку установки и развёртывания нод-чейнкода.

Пример интеграционных тестов в основном переопределяет GO-чейнкод EndendIT.java, так как они в основном обрабатываются одинаково.

См. End2endNodeIT.java#L23 (https://github.com/hyperledger/fabric-sdk-java/blob/6ef1bc801dfdb8533952b69f11fe712dffc5aa91/src/test/java/org/hyperledger/fabric/sdkintegration/End2endNodeIT.java#L23-L62).

FAB-7949: fabric-sdk-java использует информацию о привязке TLS и временную метку в сообщениях регистрации Eventhub.

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

FAB-8842: инициализация канала и восстановление после сбоя.

Канал теперь инициализируется без необходимости подключения к узлам. Могут по-прежнему появляться предупреждающие и информационные сообщения об ошибках. Даже если канал инициализирован, отсутствие функционирующих узлов может помешать выполнению других операций. Если узлы вернутся в оперативный режим, службы событий повторно подключатся.

Во многих API было добавлено указание контекста пользователя, что позволило сделать вызовы потокобезопасными.

Многие API, где требовался узел, были улучшены, чтобы попытаться использовать все определённые узлы до успешного выполнения или пока все не завершатся неудачей.

FAB-8897: настройка обработки транзакционных событий.

Улучшенное управление приложением при отправке запроса организатору. До этого изменения все Java-фьючерсы, возвращаемые sendTransation, завершались только тогда, когда все определённые каналом Eventhubs и службы одноранговых событий видели блок с конкретной транзакцией. Это всё ещё является значением по умолчанию, но теперь его можно изменить с помощью TransactionOptions (https://github.com/hyperledger/fabric-sdk-java/blob/6ef1bc801dfdb8533952b69f11fe712dffc5aa91/src/main/java/org/hyperledger/fabric/sdk/Channel.java#L3082-L3167). Пример этого, который в основном показывает значения по умолчанию, находится в End2endIT.java#L517 (https://github.com/hyperledger/fabric-sdk-java/blob/6ef1bc801dfdb8533952b69f11fe712dffc5aa91/src/test/java/org/hyperledger/fabric/sdkintegration/End2endIT.java#L517-L534).

v1.1 Fabric/CA функции

FAB-7383: реализация идентификаторов и аффилиаций Fabric-CA API.

Fabric CA API добавил API для управления идентификаторами и аффилиациями. Примеры того, как это можно сделать с помощью Java SDK, приведены в HFCAClientIT.java#L514-L658 (https://github.com/hyperledger/fabric-sdk-java/blob/9224fa3f45a70392d1b244c080bf41bd561470d3/src/test/java/org/hyperledger/fabric_ca/sdkintegration/HFCAClientIT.java#L514-L658) для идентификаторов и HFCAClientIT#L704 (https://github.com/hyperledger/fabric-sdk-java/blob/09f386c340e157e2a4f3f5cdde85e340f4586923/src/test/java/org/hyperledger/fabric_ca/sdkintegration/HFCAClientIT.java#L704-L1015) для аффилиаций.

FAB-6411: добавление поддержки Java SDK для конечной точки gencrl.

Добавлена поддержка получения списка отозванных сертификатов от Fabric-ca в методе generateCRL HFCAClient. Примеры этого приведены в интеграционных тестах, которые вызывают метод getRevokes HFCAClientIT.java (https://github.com/hyperledger/fabric-sdk-java/blob/224f569d9d1f1f77e5d22e8e0c78f3d4e298b3fc/src/test/java/org/hyperledger/fabric_ca/sdkintegration/HFCAClientIT.java#L496-L500).

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/hyperledger-fabric-sdk-java.git
git@api.gitlife.ru:oschina-mirror/hyperledger-fabric-sdk-java.git
oschina-mirror
hyperledger-fabric-sdk-java
hyperledger-fabric-sdk-java
main