Tutte le collezioni
Nuovo utente EOS? Parti da qui
Come usare EOS
Come evitare di pagare troppo per le transazioni utilizzando Antelope Blockchain?
Come evitare di pagare troppo per le transazioni utilizzando Antelope Blockchain?

Costi di transazione elevati potrebbero essere attribuibili a fatturazione soggettiva locale a un operatore e rinnovata ogni 24 ore.

Dario Cesaro avatar
Scritto da Dario Cesaro
Aggiornato oltre una settimana fa

1. Introduzione

Quando provano a firmare una transazione, gli utenti spesso ricevono un messaggio di errore che indica che non c'è abbastanza CPU e chiede di pagare da 10 a 30 millisecondi di CPU o anche di più. Questo tipo di comportamento del sistema può essere associato alla fatturazione soggettiva. In questo articolo, ti guiderò su come gestire la situazione.

2. Che cos'è la fatturazione soggettiva?

La fatturazione del soggetto è una funzionalità della blockchain Antelope che consente a un operatore di nodo di fatturare un account localmente nel proprio nodo per le risorse utilizzate dalle transazioni non riuscite senza condividere le informazioni di fatturazione con il resto della rete. È stato introdotto per ridurre l'utilizzo della CPU, ma spesso porta a transazioni con errori persistenti o transazioni perse.

3. Ciclo di vita delle transazioni di Antelope Blockchain

La blockchain Antelope ha adottato connessioni di rete Peer-to-Peer (P2P) per propagare le transazioni attraverso la rete. Quando una transazione si sposta da un nodo all'altro, il percorso che segue dipende dalle configurazioni dei nodi e dalla latenza della rete.

Diagramma dal ENF sito web


La Figura 1 mostra il ciclo di vita di una transazione nella blockchain di Antelope. Una transazione esiste quando un utente la invia a un nodo utilizzando un'API (1.1). Il nodo API passa la transazione inviata al suo protocollo P2P (1.2). Questo protocollo propaga la transazione da un nodo all'altro (1.3) fino a raggiungere il produttore del blocco corrente (1.4). Quindi, il block producer include la transazione nel blocco corrente e fattura il conto per l'utilizzo delle risorse. Ogni nodo all'interno della rete esegue un controllo interno per determinare se una transazione deve essere inoltrata al nodo successivo o rifiutata a causa dell'eccessivo utilizzo delle risorse.

Quando una transazione arriva a un nodo con fatturazione soggettiva abilitata, il nodo ne verifica la firma e identifica a quale account appartiene la transazione. Se l'account supera il suo limite di fatturazione soggettivo, il nodo interrompe la propagazione della transazione in modo che non raggiunga mai l'attuale produttore di blocchi.

La fatturazione soggettiva è additiva; quando una transazione arriva a un nodo da un account, il nodo aumenta gli addebiti sull'account per utilizzare le sue risorse. Per passare una transazione attraverso un nodo, l'account deve disporre di risorse sufficienti per coprire la fatturazione soggettiva in quel nodo. La fatturazione soggettiva viene rinnovata ogni 24 ore.

4. In quali circostanze potresti essere sovraccaricato per una transazione?

Ogni nodo blockchain tiene traccia dell'utilizzo della CPU associato a un account. Il tuo contatore di utilizzo con quel nodo specifico aumenta ogni volta che tenti una transazione non riuscita con un nodo. Tuttavia, le transazioni non riuscite non influiscono sui contatori di utilizzo di altri nodi. Quindi, il nodo a cui sei connesso ti darà informazioni sulla commissione che ti viene addebitata per la transazione..

La tariffa addebitata da un nodo è indipendente dalla tariffa addebitata da altri nodi all'interno della rete, il che significa che alcuni nodi potrebbero addebitarti più o meno di altri.

Se continui a tentare e fallire transazioni con un particolare nodo, ti verrà richiesto di pagare di più per ogni transazione tentata con quel nodo.

5. Come evitare di pagare troppo per una transazione

Quando un potenziamento gratuito non è più sufficiente per pagare una transazione o un'API connessa ti addebita un importo molto alto a causa della fatturazione soggettiva, hai tre opzioni per superare questa situazione, come mostrato nella Figura 2.

Immagine by: Sukanta Manna

opzione 1: Se la transazione è urgente e non può essere ritardata, paynode chiede altrettanto da pagare. Leggere Qui come aggiungere risorse al tuo account EOS.1

opzione 2: La tua fatturazione soggettiva su altri nodi potrebbe essere molto inferiore alla fatturazione soggettiva sul nodo connesso. Pertanto, la modifica dell'API potrebbe ridurre la fatturazione soggettiva per la transazione. Leggere Qui come modificare l'API.

Opzione 3: La fatturazione soggettiva viene rinnovata ogni 24 ore. Pertanto, attendere 24 ore, accendere il tuo account gratuitamente e riprova.

6. Conclusioni

L'invio di numerose transazioni non riuscite al nodo connesso può comportare oneri eccessivi a causa della natura cumulativa della fatturazione soggettiva. Sarebbe meglio per te interrompere l'invio di transazioni non riuscite al nodo connesso.

Se la transazione riveste un'importanza significativa, si consiglia di pagare l'importo addebitato dal nodo. Anche cambiare le API può essere utile, poiché altri nodi potrebbero imporre costi diversi rispetto al nodo connesso.

Tuttavia, se la transazione non è urgente,la soluzione migliore è aspettare 24 ore, accendere il tuo account e riprova.


Autore: Sukanta Manna

Editore: Markus Hinrichs; Randall Roland

Traduttore: Peter Valenčič

Fonti & Riferimenti:

Hai ricevuto la risposta alla tua domanda?