You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In order to scale contracts horizontally it is necessary to split it and the state up between shards. However that also implies that the contract will need to be called in a special way depending on what shard(s) the state is in, and require an extra effort from the contract developer to implement necessary state sharing between shards through cross-contract calls.
For the user-facing interface at least this can still be unified to an extent by having a contract that acts just like an nginx reverse proxy, using arbitrary logic to redirect the requests to a contract shard according to e.g. account id. This introduces an overhead of a cross-function call to each call but keeps all the nice properties that we expect of a single shard contract today (from the user API standpoint.)
We should draft an sample demo/example contract that contract developers could use to draw inspiration on how to scale past the confines of a single shard.
The text was updated successfully, but these errors were encountered:
In order to scale contracts horizontally it is necessary to split it and the state up between shards. However that also implies that the contract will need to be called in a special way depending on what shard(s) the state is in, and require an extra effort from the contract developer to implement necessary state sharing between shards through cross-contract calls.
For the user-facing interface at least this can still be unified to an extent by having a contract that acts just like an nginx reverse proxy, using arbitrary logic to redirect the requests to a contract shard according to e.g. account id. This introduces an overhead of a cross-function call to each call but keeps all the nice properties that we expect of a single shard contract today (from the user API standpoint.)
We should draft an sample demo/example contract that contract developers could use to draw inspiration on how to scale past the confines of a single shard.
The text was updated successfully, but these errors were encountered: