I am reading Mastering Ethereum book and I have two questions which are bothering me and can't understand:

First one is about the Mempool. I understand that this is sort of database where all pending transactions are stored before they are added to a block. But my question is where are exactly those transactions stored. Since it is not a central database, are they stored locally on every active Ethereum node or are they stored on some central place where all nodes have access to.

My second question is how those transactions are actually broadcasted to the Mempool. I understand that Ethereum is using P2P system based on Kadamlia, but I suppose that nodes which are nearby receive newcomming transactions faster than nodes which are far away from each other. Or in other words some nodes should tend to receive the pending transactions faster than others, which is some kind of advantage, because they can start adding them to a block and mine that block while other nodes are still waiting for them to be received. Am I correct or first all active nodes should receive the same amount of transactions before they start adding them to a block?

If someone clarifies those two questions to me, will be very thankful!

1 Answer 1


Every node has a mempool present in it. mempool has default size of 300 MB and every node is independent of including a transaction to its mempool.

In your second question, It is not a problem if any specific set of nodes get the transaction faster than any far-away node because of the consensus mechanism, if a transaction has to be included to the blockchain, more than 51% of the nodes has to agree upon the transaction so to do this, all node should get the same transaction to get validated.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.