A propos de la transmission en continu d'événements Blockchain
Un code chaîne dans la blockchain peut publier des événements de deux façons. L'une consiste à utiliser le kit SDK Hyperledger Fabric, l'autre en utilisant l'API REST Blockchain Platform. Toutefois, ces deux approches présentent les limites suivantes :
- Les kits SDK Hyperledger Fabric sont dans Java ou Node.js uniquement.
- Vous devez appliquer des patches aux kits SDK Hyperledger Fabric avant de les utiliser avec Oracle Blockchain Platform.
- La transmission des notifications d'événement n'est pas garantie.
- Les consommateurs de l'API REST doivent disposer d'informations d'identification dans l'instance de fondateur de la chaîne de blocs.
Pour éviter ces restrictions, utilisez l'API REST Oracle Blockchain Platform avec une application relais. L'application relais peut être une fonction sans serveur. Il reçoit des données traitées d'événement au format JSON de la chaîne de blocs et reformate les données traitées d'événement pour qu'elles soient compatibles avec l'API Apache Kafka. L'application de relais obtient les informations d'identification d'authentification auprès d'Oracle Vault, puis envoie l'événement aux services de transmission en continu Oracle. Plusieurs consommateurs d’événements peuvent ensuite s’abonner aux services de transmission en continu Oracle et commencer à recevoir les événements qu’ils sont autorisés à recevoir.
Architecture
Ce diagramme illustre la configuration de notifications d'événement de chaîne de blocs fiables et sécurisées pour plusieurs consommateurs d'événements à l'aide des outils et services d'Oracle Cloud Infrastructure.
Voici comment l’événement passe de la plate-forme de blockchain aux consommateurs d’événements :
- Le code chaîne de blocs appelle la passerelle d'API avec l'événement en tant que données traitées. Vous abonnez manuellement l'URL de passerelle d'API aux événements de chaîne de blocs.
- La passerelle d'API transmet la demande à l'application de relais d'événement. L'application de relais d'événement est une application que vous écrivez. Il exécute les fonctions suivantes :
- Réformate l'événement pour l'API de service Streaming.
- Extrait les informations d'identification du service Streaming à partir de Vault.
- Envoie l'événement à l'API du service Streaming.
- Le service Streaming s'assure que l'événement est transmis aux applications consommateur autorisées.

Description de l'illustration architecture-blockchain-event-streaming.png
Avant de commencer
A propos des services et rôles requis
Pour implémenter cette solution, vous avez besoin d'un compte Oracle Cloud Infrastructure.
Votre compte utilisateur doit disposer des autorisations suffisantes pour créer et déployer les services suivants :
-
Oracle Blockchain Platform
-
Oracle Functions
-
Oracle Cloud Infrastructure Vault
-
Oracle Cloud Infrastructure Streaming
-
Oracle Cloud Infrastructure Registry
-
Oracle Cloud Infrastructure Gateway
Pour plus d'informations sur les stratégies d'accès, reportez-vous à Stratégies courantes.
Reportez-vous à Découvrez comment obtenir les services Oracle Cloud pour les solutions Oracle pour obtenir les services cloud dont vous avez besoin.