The Credits team finally got to the good part, to which we referred earlier. Today, we are excited to announce that we have begun the process of update implementation. This activity brings us one step closer to the MainNet Update! As previously mentioned, our main activity focuses on the implementation of new features that optimize the use of resources, expedite network functioning, and improve stability and fault tolerance. You can find our roadmap here!
Here is a full list of changes and new features introduced in the first update phase:
The New Version of Synchronization
The updated synchronization works with an emphasis on the DHT network model. During operation, the nodes exchange technical messages, which helps to avoid congestion, i.e. situations when a node sends too many requests, and in response receives so many messages that it cannot handle the workload for a long time. This algorithm has been tested during speed test and is aimed at minimizing traffic during synchronization.
Refining the Mechanism for the Transactions Distribution
We have strayed from the continuous distribution of packets to all nodes. Now only packet headers are being sent, and, if necessary, the nodes themselves request packets from each other, thereby avoiding the barrage of transaction packets and also unloading the network and the transport module.
Besides, the two previous improvements significantly affect the hardware load, since the number of serializable/deserializable packets decreases significantly (about 5–20 times for synchronization and 5–15 times for distribution of transaction packets).
Multithreaded Transaction Verification
From now on, the validator fully uses all available CPU resources, which allows loading all processor threads on middle-class hardware, thereby improving system performance. According to the carried out speed tests, we assume that in a distributed network nodes will be able to freely process up to 15–20 thousand transactions per second and pass peaks of up to 50 thousand transactions per second.
Quick Nodes’ Start
Here we have applied the system to rapidly launch a node without reading the entire database. For the user, this can be seen by a shorter start time of the node. The update contains several novelties:
Replacement of the wallet caching system which greatly frees up memory;
Adding a system for creating and saving the current state of the blockchain (wallets + smart contracts). By simply loading the state of the database, synchronization begins at the block following the block of the recorded state.
The current status of the update is in progress and being verified in the TestNet, but soon we will upgrade MainNet with it. When the time comes, we will make a related announcement. After several more updates, it will be the right time to resume the public tests and allow the users to join and contribute to the testing.
We would love your participation and insights. Stay tuned for more updates!
Check our GitHub branch to track the development progress!
When you visit our website, we may store cookies on your browser for your security and to help us better understand user behavior and inform us about which parts of our website you have visited. The information does not usually directly identify you, but it can give you a safe and more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Blocking some types of cookies may impact your experience on the site.