New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve transaction execution speed #222
Comments
|
|
Simple Summary
This TIP provides Improve transaction execution speed for java-tron.
Abstract
In the current Tron ecosystem, the destroyed TRX is transferred to the black hole account. When performing transfers, the black hole account needs to be serialized and deserialized. Since the black hole account contains less TRC10 tokens, serialization and deserialization will hardly affect the performance. However, with the development of time, there are currently a large number of TRC10 tokens in the black hole account, which has a great impact on performance during serialization and deserialization. From our current test, the performance is reduced by 50% to 100%.
Motivation
Improve the performance of the TRON network and increase the QPS of transactions.
Rationale
void burnTrx(long number): The method of destroying TRX, the value is accumulated and recorded in the DynamicPropertiesStore database
long getBurnTrxAmount(): Get the method of destroying the total TRX amount from the DynamicPropertiesStore
boolean supportOptimizeBlackHole(): Whether to open the proposal to remove the blackhole account
Desired Features:
It can improve the QPS of the whole network transaction, and the performance can be improved by more than 50%.
Technical Specifications:
Since the performance degradation is caused by the serialization and deserialization of black hole accounts, to improve performance, we can remove the black hole accounts and use DynamicPropertiesStore to record the number of destroyed TRX.
To make the database of the whole network consistent, we need to create a proposal to remove black hole accounts.
Data Structures:
The data structure of the amount of TRX destroyed:
key: BURN_TRX; value: the number of TRX destroyed
Implementation
coming soon
Copyright
All content herein is licensed under Apache 2.0.
The text was updated successfully, but these errors were encountered: