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

Однако последняя версия Hyperledger Composer v0.17.1 (примечания к выпуску здесь) действительно интересна по нескольким причинам.

Сначала немного о совместимости Hyperledger Fabric / Composer.

Текущий стабильный выпуск Hyperledger Fabric - v1.0, поэтому у нас есть поток Hyperledger Composer v0.16.x, совместимый с ним.

Тем не менее, прогресс требует все новых и лучших версий, поэтому команда Hyperledger Fabric в настоящее время сделала доступным «технический превью» реализации v1.1. Недавно выпущенный поток Composer v0.17 совместим с этой версией.

Так что нового?

Собственный код цепочки NodeJS

Composer теперь использует преимущества встроенной поддержки цепного кода NodeJS, которая была выпущена в v1.1, что означает, что мы смогли удалить всю нагрузку кода из Composer, которая позволяла это раньше, и теперь ваш цепочный код может работать быстрее, с меньшими ограничениями и используя меньше памяти.

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

Так что, если этого недостаточно, чтобы интересоваться версией 0.17, как насчет…

Общий профиль подключения (CCP)?

В Composer сетевые бизнес-карты представляют собой коллекции файлов, все они хорошо заархивированы, которые вместе используются клиентскими приложениями Hyperledger Fabric для нацеливания на бизнес-сети, с которыми им нужно взаимодействовать, и для хранения учетных данных, с которыми они подключаются.

Часть сетевой карты предприятия содержится в файле, называемом профилем подключения, который определяет топологию сети предприятия. Структура этого файла изменилась между Fabric v1.0 и v1.1, который теперь использует так называемые общие профили подключения (CCP).

В Composer v0.17 добавлена ​​поддержка CCP Hyperledger Fabric, так что приложения Composer теперь могут использовать весь спектр возможностей и топологий, которые CCP позволяют указывать при проектировании сети Blockchain.

Как и следовало ожидать, это приводит к тому, что карты Business Network Card, выпущенные до версии 0.17, больше не совместимы, поэтому вам придется уничтожить их, но это небольшая цена, которую вы должны заплатить, если хотите работать над v1. 1 ткань.

Получение практического опыта

Здесь есть 2 варианта, чтобы увидеть эту новую версию в действии.

онлайн

Первый - использовать бесплатную версию, которая уже размещена, перейдя здесь.

«Далее» в URL-адресе указывает, что это Fabric / Composer v1.1 / 0.17.1.

Если вы пойдете сюда, то внимательные среди вас заметят, что это Fabric / Composer v1.0 / 0.16.3.

Имейте в виду, что эти версии несовместимы - в основном из-за эволюции сетевых карт Composer Business Network (которые делают подключение к фабричной сети настолько простым!), Чтобы включить функции общего профиля подключения.

Локальная установка

Итак, давайте настроим структуру гипертекстов v1.1 и совместимую игровую площадку и среду для композиторов v0.17, чтобы мы могли разработать приложение Blockchain.

У вас должен быть Mac (10.12 или новее) или Linux Ubuntu (14.04 или 16.04 base). Пользователям Windows потребуется Vagrant VM под управлением Ubuntu или аналогичного.

  1. Установите предварительное программное обеспечение.

Узел v8.9.4 LTS и NPM v5.6

(Я рекомендую Homebrew установить NPM, если вы используете Mac)

Docker и Docker Compose

Больше советов для конкретных операционных систем можно найти здесь.

2. Установите инструменты композитора.

Откройте терминал и выполните эти команды, чтобы получить интерфейс командной строки композитора v0.17, игровую площадку (UI) и REST-сервер.

npm install -g composer-cli@next
npm install -g composer-playground@next
npm install -g composer-rest-server@next

3. А теперь давайте запустим несколько докер-контейнеров, на которых запущена структура Hyperledger

mkdir ~/fabric-tools && cd ~/fabric-tools

curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.zip
unzip fabric-dev-servers.zip
export FABRIC_VERSION=hlfv11
./downloadFabric.sh
./startFabric.sh
./createPeerAdminCard.sh

4. Запуск пользовательского интерфейса игровой площадки для композиторов.

Запустите composer-playground в терминале, чтобы запустить пользовательский интерфейс. Он автоматически запустит сеанс браузера.

Теперь у вас должно быть запущено несколько док-контейнеров, которые вы можете увидеть, запустив docker ps

Что дальше?

Я настоятельно рекомендую вам пойти и следовать руководствам по использованию Composer Playground для развертывания бизнес-сети. Есть также несколько интересных руководств по разработке определения бизнес-сети и выполнению запросов к блокчейну.

Пссш, как его убить?

Используйте эти команды, чтобы уничтожить контейнеры, удалить контейнеры и, наконец, удалить изображения.

docker kill $(docker ps -q)
docker rm $(docker ps -aq)
docker rmi $(docker images dev-* -q)

В любом случае, в следующий раз я немного углублюсь в некоторые другие аспекты инструментов Composer. Сервер REST, аутентификация / безопасность, модель Business Network? Сообщите мне, если что-нибудь вызовет у вас интерес, в разделе комментариев ниже.