When we made our project public and shared our roadmap for the upcoming months, we committed to continuously improve our technology and iterate until we have a great product for our mainnet release. Today we are happy to share that we have released a new backend architecture that increases KYVE’s overall scalability.
Before this update, our architecture revolved around a single Arweave smart contract. That smart contract handled everything from the $KYVE token to voting and staking, as well as the archiving pools themselves.
After a few weeks of gathering feedback from the community and testing the technology ourselves, we noticed a recurrent issue that would come up. Unlike blockchains like Ethereum, smart contracts on Arweave are not stateful and thus aren’t executed on-chain. This is useful for gas prices paid by users; however, on the other hand, it takes the user quite some time to execute the contract to the latest state if there are many contract interactions. And this is precisely the problem we were starting to experience with our contract.
The new backend architecture
We decided to take a more scalable approach. We have, therefore, decided to separate the one single and massive contract into three separate contracts:
With the governance smart-contract, users can stake $KYVE. Staking $KYVE has several advantages:
The treasury receives 1% of token payouts from all pools. Governance users can vote and interact with this contract by transferring tokens out of the treasury or burning tokens later.
Uploader and Validator nodes must stake $KYVE tokens in a pool. Once the uploader has uploaded data and registered it in a pool, the validators fetch the data and validate it. After a grace period is over, the amount of $KYVE to be paid out is calculated. The protocol pays out rewards to a governance holder, the treasury, the uploader, and the validators. The validator reward gets evenly distributed between all validators.
What is the benefit of the new architectures for users?
This new backend architecture improves internal and external experiences.
Want to get started?
Check ourdocumentationand join ourTelegram,Discord, follow us onTwitterandLinkedinor write us an email at team@kyve.network.