When deploying a rollup with a single node to start with, how easy is it to scale and "decentralise" it by adding more nodes to it? Is the SORUs automatically sharing the load between the nodes?
When deploying a rollup, how easy is it to scale and "decentralise" it by adding more nodes? Do SORU automatically share load between the nodes?
I'm seeing alot of people get this wrong. Scaling your rollup node does not mean adding more SCORUS/bond/etc. A rollup is a blockchain primitive, not actual infrastructure.
Your rollup is simply a piece of code sitting on the Tezos L1, that is it. Anyone can read the Tezos L1, compute the current state of your rollup node and post a commitment of the current balance sheet. There is no "load", users send messages to Tezos L1, which your rollup node reads and reacts to.
Scaling up means increasing your infrastructure to read from the blockchain faster, compute the current commitment faster, and index the balance sheet into something readable on your UI. This is fully independent from the resulting commitment hash that this whole infrastructure creates. 10k bond is for commitment, the L1 does not care wether a raspberry pi of a kubernetes cluster calculated it.
There are scaling limits! Layer 2 messages still go on Layer 1, so there are storage limits! This will be the new limiter to TPS on tezos, and to go further, we need data availability sharding.
DAS basically means we split parts of the blockchain store across different nodes instead of the whole chain on each node. Horizontal scaling in action.
To "decentralize" your node, you'll have to get a third party to commit to running and posting checks on your computations.
I'm not sure I understand this question, but I'll try to answer some adjacent questions and see if that helps.
One big benefit of rollups is that you can scale vertically. Buy bigger, faster machines, and you'll get more throughput.
Another big benefit is that not everyone has to validate every rollup, offering us a kind of horizontal scaling. If 3 parties are validating 3 different rollups, we can get 3x the throughput we would with 3 parties validating a single rollup.
There is no automatic sharing. One octez rollup node validates one rollup. If you want to validate multiple rollups, you'll need multiple nodes, but you'll also need to spend for more hardware.
Lastly, on how to deploy a rollup, check out our blog post to get started:
There is no notion of load balancing between nodes: just like nodes on the Layer 1, all rollup nodes execute the exact same code. Anyone can choose to be an operator for any rollup, provided they comply with one single requirement: if the rollup relies on data stored off-chain, the data transmitted through its“reveal data channel” must be made public.