Lo stack Java di Cardano automatizza il ripristino delle transazioni con TxFlow

Cardano Client Lib aggiunge piani di transazione portabili, concatenamento UTxO automatico e ripristino durevole. Yaci Store e il nodo dati Yano in pre release estendono lo stesso stack incentrato su Java all’indicizzazione e ai test di rete locale.

By SongMarketCap

Updated:

Cardano News - Lo stack Java di Cardano automatizza il ripristino delle transazioni con TxFlow

Cardano Community ha pubblicato la 71ª Developer Office Hours, in cui il Lead Blockchain Architect della Cardano Foundation Satya Ranjan ha presentato nuovi strumenti per gli sviluppatori Java che costruiscono su Cardano.

Cardano Client Lib è disponibile nella versione stabile 0.7.2, mentre la linea preliminare ha raggiunto 0.8.0-pre5. I componenti più recenti puntano all’esecuzione a più fasi, alla gestione dei rollback e a carichi di lavoro di transazioni più elevati.

Cardano TxPlan sposta la logica delle transazioni in YAML

Cardano Client Lib è un SDK Java puro che supporta la derivazione degli indirizzi, i pagamenti, la coniazione di token, gli script Plutus, lo staking e le operazioni di governance. Non richiede librerie native e può funzionare anche con linguaggi JVM come Kotlin e Scala.

Il nuovo livello TxPlan consente di definire le istruzioni di transazione in documenti YAML o JSON portabili invece di mantenerle interamente all’interno del codice applicativo. Un piano può descrivere pagamenti, coniazione e interazioni con script, mentre indirizzi, chiavi di firma e riferimenti a policy vengono forniti in modo sicuro a runtime.

Gli sviluppatori possono riutilizzare lo stesso piano con destinatari, account o parametri dei token diversi. La definizione può anche essere serializzata e archiviata, preservando le informazioni necessarie per ricostruire una transazione dopo un rollback o un’esecuzione interrotta.

TxPlan si collega direttamente al builder QuickTx di Cardano Client Lib. La composizione delle transazioni e l’infrastruttura dei provider esistenti restano disponibili, mentre le istruzioni di business ripetibili passano a un formato che può essere convalidato ed eseguito in modo indipendente.

TxFlow gestisce concatenamenti, rollback e flussi di transazioni

TxFlow coordina processi che richiedono diverse transazioni blockchain dipendenti. Uno sviluppatore può definire passaggi come deposito, distribuzione e prelievo, quindi specificare quali output di un passaggio precedente devono finanziare il successivo.

Il motore supporta l’elaborazione sequenziale, concatenamento in pipeline e batch paralleli. La modalità pipeline consente a una transazione successiva di consumare un output creato da una transazione in sospeso senza attendere una conferma di blocco separata.

I requisiti di conferma, le politiche di ritentativo e il ripristino da rollback sono configurati all’interno del flusso. Questo elimina la necessità che ogni team applicativo costruisca un proprio livello di monitoraggio e reinvio.

TxFlowStream estende il modello a carichi di lavoro continui e ad alto volume. Ranjan ha mostrato l’input da CSV e ha spiegato che uno stream aperto può anche ricevere richieste tramite un endpoint HTTP o un adattatore esterno. Kafka non è incluso nella libreria ma può fornire istruzioni allo stream dall’esterno.

Corsie separate consentono a diversi indirizzi di finanziamento di elaborare transazioni in parallelo mantenendo l’esecuzione first in first out all’interno di ciascuna corsia. Identificatori di business evitano esecuzioni duplicate, mentre l’archiviazione su H2 e PostgreSQL consente di riprendere l’elaborazione dopo un riavvio.

Le dimostrazioni hanno riguardato pagamenti in ADA, esecuzione di script Plutus, coniazione di token e pagamenti ADA in batch. Hanno inoltre incluso concatenamento UTxO automatico e ripristino dopo un’interruzione simulata.

Yano amplia l’infrastruttura di testing Java di Cardano

La presentazione ha trattato anche Yaci Store 3.0.0-beta3, la prossima linea beta principale dell’indicizzatore modulare di Cardano. La release amplia le API compatibili con Blockfrost e include correzioni per governance e per Protocol Version 11, sebbene non sia stata ancora raggiunta la piena compatibilità con Blockfrost.

Yano estende lo stack Java all’infrastruttura di nodo e di testing. Il nodo dati Cardano è costruito su Yaci e Cardano Client Lib, utilizza RocksDB per la persistenza e può essere eseguito come applicazione Quarkus autonoma o come libreria Java incorporata.

All’interno di Yaci DevKit, Yano può inizializzare e far avanzare una rete Cardano locale prima di trasferire la produzione di blocchi al cardano-node Haskell. È disponibile anche una modalità solo Yano quando gli sviluppatori necessitano di un ambiente leggero per il testing di applicazioni e SDK.

Yano rimane un progetto in fase pre release e non è destinato alla validazione in produzione. Ranjan ha anche presentato in anteprima macchine a stati specifiche per applicazione le cui radici Merkle possono essere ancorate a Cardano, ma tale funzionalità resta sperimentale.

I tre componenti hanno ora ruoli distinti all’interno dello stack Java. Cardano Client Lib definisce ed esegue le transazioni, Yaci Store indicizza i dati di rete e Yano fornisce un ambiente di nodo controllabile per il testing. I team Java possono sostituire servizi di rollback personalizzati e l’orchestrazione manuale di nodi locali con infrastrutture riutilizzabili prima che le loro applicazioni arrivino in produzione.