Informazioni sugli eventi della blockchain di streaming

Puoi pubblicare notifiche sugli eventi di Oracle Blockchain Platform a più sottoscrittori autenticati in modo sicuro e affidabile con l'aiuto di strumenti e servizi all'interno di Oracle Cloud Infrastructure.

Un codice concatenato nella blockchain può pubblicare gli eventi in uno dei due modi. La prima consiste nell'utilizzare l'SDK Hyperledger Fabric e l'altra consiste nell'utilizzare l'API REST della piattaforma Blockchain. Tuttavia, questi due approcci hanno le seguenti limitazioni:

  • Gli SDK Hyperledger Fabric sono solo in Java o Node.js.
  • È necessario applicare patch agli SDK Hyperledger Fabric prima di utilizzarli con Oracle Blockchain Platform.
  • Non è garantita la consegna delle notifiche di eventi.
  • I consumer dell'API REST devono disporre delle credenziali nell'istanza fondatore della blockchain.

Per evitare tali limitazioni, utilizzare l'API REST di Oracle Blockchain Platform con un'applicazione relay. L'applicazione relay può essere una funzione serverless. Riceve un payload evento in formato JSON dalla blockchain e riformula il payload dell'evento in modo che sia compatibile con l'API Apache Kafka. L'applicazione relay ottiene le credenziali di autenticazione da Oracle Vault, quindi invia l'evento a Oracle Streaming Services. Più consumer di eventi possono quindi effettuare la sottoscrizione a Oracle Streaming Services e iniziare a ricevere gli eventi per i quali sono autorizzati a ricevere.

Architettura

Questo diagramma mostra come impostare notifiche di eventi blockchain affidabili e sicure per più consumer di eventi utilizzando gli strumenti e i servizi all'interno di Oracle Cloud Infrastructure.

Questo è il modo in cui l'evento scorre dalla piattaforma blockchain ai consumatori di eventi:

  1. Caincode nella blockchain chiama il gateway API con l'evento come payload. Sottoscrivi manualmente l'URL del gateway API per gli eventi della blockchain.
  2. Il gateway API passa la richiesta all'applicazione Event Relay. L'applicazione Event Relay è un'applicazione scritta. Esegue le funzioni riportate di seguito.
    • Esegue di nuovo la formattazione dell'evento per l'API del servizio di streaming.
    • Recupera le credenziali del servizio di streaming dal vault.
    • Invia l'evento all'API del servizio di streaming.
  3. Il servizio di streaming assicura che l'evento venga consegnato alle applicazioni consumer autorizzate.
Segue la descrizione di Architecture-blockchain-event-streaming.png
Descrizione dell'illustrazione Architecture-blockchain-event-streaming.png

Operazioni preliminari

Hai bisogno di un'applicazione codice concatenato che emette gli eventi e hai bisogno di una o più applicazioni che utilizzano gli eventi che il codice concatenato emette. Se non si dispone di asset blockhain esistenti, è possibile modificare uno dei campioni inclusi in Oracle Blockchain Platform.

Informazioni sui servizi e i ruoli necessari

Per implementare questa soluzione, è necessario disporre di un account Oracle Cloud Infrastructure.

L'account utente deve disporre di autorizzazioni sufficienti per creare e distribuire i servizi riportati di seguito.

  • Oracle Blockchain Platform

  • Oracle Functions

  • Oracle Cloud Infrastructure Vault

  • Streaming di Oracle Cloud Infrastructure

  • Oracle Cloud Infrastructure Registry

  • Oracle Cloud Infrastructure Gateway

Per informazioni sui criteri necessari per l'accesso, vedere Politiche comuni.

See Learn how to get Oracle Cloud services for Oracle Solutions to get the cloud services you need.