

In other words, the user sends it any available computer from the list of so-called peers - computers that do not trust each other. When a transaction is ready, the user sends it to the p2p network, through which all blockchain nodes communicate. In addition to that, the participants also agree on the order and contents of blocks. Computers do not trust each other, so there are significantly more checks, especially the cryptographic ones. Then the user receives a response that roughly means the following: "It looks like the biggest cluster part has applied changes to the database".Ī blockchain transaction should also "be accepted by the majority", but each computer checks the changes more thoroughly. The user sends a transaction that modifies the data, and waits until many computers make changes to the database. This scheme is similar to accessing a distributed database. User receives information about a new block with his transaction from the network.Some of participants generate new blocks including a user transaction and replicate new blocks between network participants.Network replicates information between network participants.User sends a transaction to the network and waits for confirmation of acceptance.
BLOCKCHAIN TRANSACTION PROCESSING SOFTWARE
This parameter shows the time during which a client will receive a reliable confirmation of a successful payment, confirmed booking or a deal.īelow is a rough sequence of steps that the client software spends time on: In all these cases, we prepare a transaction, send it to the network and expect a response. For example, a cryptocurrency transfer transaction or a transaction, calling a smart contract function. Let's figure out why.įor users, blockchain performance is the speed at which they get the requested service. In reality, the numbers are completely different and depend mainly on user actions.īlockchain performance measurement is even more complicated than that of traditional services, for example, distributed databases. Speaking about performance of any system, blockchain or database with a large number of servers, we don't usually mean actual performance, but the ability to process N transactions per second under controlled conditions (when running on a small number of test computers that perform a predefined set of transactions). A number of tx/sec will not reflect a huge variety of states of a large decentralized network. The truth is that it's close to impossible to give an accurate numerical performance estimate of a system that consists of tens and hundreds of computers, especially when they are scattered across the planet and connected by a network.
BLOCKCHAIN TRANSACTION PROCESSING CODE
Have you noticed that when we talk about blockchain performance, we usually name approximate numbers? Where do 1000, 100,000 tx per second and other round numbers come from? Why don't blockchain developers proudly claim 3,423 tx/sec on their websites after each blockchain code update?
