Acerca de los eventos de cadena de bloques de transmisión

Puede publicar notificaciones de eventos de Oracle Blockchain Platform en varios suscriptores autenticados de forma segura y fiable con la ayuda de herramientas y servicios de Oracle Cloud Infrastructure.

Un código de cadena en la cadena de bloques puede publicar eventos de una de estas dos formas. Una es mediante el uso del SDK de Hyperledger Fabric y la otra mediante la API de REST de Blockchain Platform. Sin embargo, estos dos enfoques tienen las siguientes limitaciones:

  • Los SDK de Hyperledger Fabric solo están en Java o Node.js.
  • Debe aplicar parches a los SDK de Hyperledger Fabric antes de utilizarlos con Oracle Blockchain Platform.
  • No se garantiza la entrega de notificaciones de eventos.
  • Los consumidores de la API de REST deben tener credenciales en la instancia de fundador de blockchain.

Para evitar estas limitaciones, utilice la API de REST de Oracle Blockchain Platform con una aplicación de retransmisión. La aplicación de retransmisión puede ser una función sin servidor. Recibe una carga útil de evento en formato JSON de la cadena de bloques y vuelve a formatear la carga útil del evento para que sea compatible con la API de Apache Kafka. La aplicación de retransmisión obtiene credenciales de autenticación de Oracle Vault y, a continuación, envía el evento a Oracle Streaming Services. Varios consumidores de eventos pueden suscribirse a Oracle Streaming Services y empezar a recibir eventos que están autorizados a recibir.

Arquitectura

En este diagrama se muestra cómo configurar notificaciones de eventos de cadena de bloques fiables y seguras para varios consumidores de eventos mediante las herramientas y los servicios de Oracle Cloud Infrastructure.

Así es como el evento fluye de la plataforma de cadena de bloques a los consumidores de eventos:

  1. El código de cadenas de la cadena de bloques llama al gateway de API con el evento como carga útil. Suscribe manualmente la URL de gateway de API a los eventos de blockchain.
  2. El gateway de API transfiere la solicitud a la aplicación de relé de eventos. La aplicación de relé de eventos es una aplicación que escribe. Realiza las siguientes funciones:
    • Vuelve a formatear el evento para la API del servicio Streaming.
    • Recupera credenciales de servicio de flujo de Vault.
    • Envía el evento a la API del servicio Streaming.
  3. El servicio de transmisión garantiza que el evento se entrega a las aplicaciones de consumidor autorizadas.
A continuación, se muestra la descripción de Architecture-blockchain-event-streaming.png
Descripción de la ilustración Architecture-blockchain-event-streaming.png

Antes de empezar

Necesita una aplicación chaincode que emita eventos y necesita una o más aplicaciones que consumen los eventos que emite chaincode. Si no tiene activos de blockhain existentes, puede modificar uno de los ejemplos que se incluyen en Oracle Blockchain Platform.

Acerca de los servicios y roles necesarios

Para implantar esta solución, necesita una cuenta de Oracle Cloud Infrastructure.

La cuenta de usuario debe tener permisos suficientes para crear y desplegar los siguientes servicios:

  • Oracle Blockchain Platform

  • Oracle Functions

  • Oracle Cloud Infrastructure Vault

  • Flujo de Oracle Cloud Infrastructure

  • Oracle Cloud Infrastructure Registry

  • Gateway de Oracle Cloud Infrastructure

Consulte Políticas comunes para obtener información sobre las políticas necesarias para el acceso.

Consulte Más información sobre cómo obtener los servicios de Oracle Cloud para las soluciones de Oracle para obtener los servicios en la nube que necesita.