Compression blocks for better node performance: full node perspective
As an cryptocurrency enthusiast and server administrator, he is probably interested in optimizing a complete level configuration to improve performance. An aspect that is often forgotten is to block compression. In this article, we will consult if Bitcoin Core or other full level customers compromise blocks on the network or locally in the node file system.
Basic
It is important to understand what every term means: before diving into the compression of the blocks:
* Full node : The customer operating on the server connects to the blockchain network and treatment transactions.
* Locking compression : The process of reducing individual blocks in the transit or the local file system.
Bitcoin Core and full level compressor
Bitcoin Core is a full -level client by default Bitcoin. However, its performance can be affected by a variety of factors, including blocking blocks.
In 2017, an error was discovered which caused an excessive compression of the Bitcoin blocks, causing a significant slowdown in the congestion of the network (source: [1]). This problem not only affected the Bitcoin kernel, but also other customers with similar compression algorithms, such as LND (Lightning Network Daemon) and Blockstream Node.
Other full level customers
While Bitcoin Core is the best known customer of full level, others can also suffer from block compression problems:
* LND : LND uses a compression algorithm similar to the Bitcoin kernel and previously reported similar performance problems (source: [2]).
* BlockStream Node.js Customer : Blockstream Node. You also use a compression algorithm, which can cause performance problems with the congestion of the major network.
Compression blocks 7Z
To answer your question directly, it seems that the Bitcoin kernel and other full level customers do not press transit blocks or on a local scale in a node file system. However, you can use tools such as 7z before download to compress individual blocks in the local file system.
The use of 7z with a Bitcoin wallet will be created:
- Compressed block files: compressed files (for example “.7z” archive) contain original block data.
- Uncompressed block files: Download compressed files in the network becomes non -pressure files (for example.
To press a little locally to save the block using 7Z:
- Create an empty directory in the local file system.
- Insert separate locking files in this directory.
- Race
7z a -t7z -M0 my -Block.7z *> My -Block.7z
It will tighten the blocks and create an archive file (my block. 7z`), which contains all the original block data.
Conclusion
While Bitcoin Core and other full level customers do not rely on transit blocks or locally in the node file system, you can use tools such as 7z to compress individual blocks before their download network. This approach offers a compromise between performance and data retention.
Keep in mind that it is an experience and that its effectiveness will depend on various factors, including the congestion of the network, the size of the block and your special framework.
References
[1] “Bitcoin Core: compression suffer” – Bitcoin core github restitory (2017)
[2] “LND Compression Problems” – LND Documentation (2020)
Please let me know if you have any questions or if you need additional explanations on this subject!
Leave a Reply