Comment by bohendo on 30/07/2020 at 06:54 UTC

19 upvotes, 1 direct replies (showing 1)

View submission: Matic Network's Great Reddit Scaling Bake-Off submission

Great work, very impressive numbers

Proof-of-Stake based decentralized multi-operator Plasma construction which mitigates mass exit occurrence

How many operators were running during these benchmarks?

How many ought to run for the side-chain to be secure?

Extremely high scalability with each sidechain (multiple sidechains in future, hence suitable for the scale of Reddit)

If you were designing a Matic-Reddit integration, would you consider running a separate side chain for each subreddit vs one side-chain for all subreddits?

Replies

Comment by jdkanani at 31/07/2020 at 07:44 UTC

12 upvotes, 1 direct replies

Thanks!

How many operators were running during these benchmarks? How many ought to run for the side-chain to be secure?

If you are referring to the benchmark where we achieved 7200 TPS, you can refer https://blog.matic.network/7200-tps-achieved-on-matic-networks-counter-stake-testnet/[1][2]. This testnet had 122 external validators running nodes.

1: https://blog.matic.network/7200-tps-achieved-on-matic-networks-counter-stake-testnet/

2: https://blog.matic.network/7200-tps-achieved-on-matic-networks-counter-stake-testnet/

Addressing your underlying questions, Matic has a 2-layer validator and block production mechanism. You can refer this link[3] for an overview of the architecture. Heimdall is the main validator layer with all validators and Bor is the block production layer for a sidechain.

3: https://docs.matic.network/docs/contribute/bor/bor#architecture

From the main Validator pool on Heimdall, a committee of Bor block producers are selected from the Validator pool on the basis of their stake, which happens at regular intervals and this committee is shuffled periodically. These intervals are decided by Validator governance with regards to dynasty and network.

You can refer https://docs.matic.network/docs/contribute/bor/bor#proposers-and-producers-selection[4][5] for more details.

4: https://docs.matic.network/docs/contribute/bor/bor#proposers-and-producers-selection

5: https://docs.matic.network/docs/contribute/bor/bor#proposers-and-producers-selection

The smaller number of block producers for a periodic interval (shuffled between spans[6] and sprints[7]) allows higher throughput. You can refer to https://docs.matic.network/docs/contribute/matic-architecture[8][9], https://docs.matic.network/docs/contribute/bor/core%5C_concepts[10][11] and https://docs.matic.network/docs/contribute/bor/consensus[12][13] for more details.

6: https://docs.matic.network/docs/contribute/bor/consensus#span

7: https://docs.matic.network/docs/contribute/bor/consensus#sprint

8: https://docs.matic.network/docs/contribute/matic-architecture

9: https://docs.matic.network/docs/contribute/matic-architecture

10: https://docs.matic.network/docs/contribute/bor/core%5C_concepts

11: https://docs.matic.network/docs/contribute/bor/core_concepts

12: https://docs.matic.network/docs/contribute/bor/consensus

13: https://docs.matic.network/docs/contribute/bor/consensus

The number of validator slots on Heimdall is currently configured at 100 and the committee of block producers is configured at 7.

​

If you were designing a Matic-Reddit integration, would you consider running a separate side chain for each subreddit vs one side-chain for all subreddits?

Matic follows a shared sidechain approach for composability reasons. When Reddit outgrows the throughput of 1 sidechain with **n** subreddits, it can spawn the next **m** subreddits in another sidechain and so on.