I know in web2 industry, most connections are stateless. Some of them are stateful, and that’s will be the trouble of whole micro service architecture. And as I know most connections of web3 industry will be stateful. How will Linera solve that in Linera’s elastic architecture ?
I’m not sure if state management is the biggest concern with micro services in web2. I would imagine that stateful micro-services can use a shared database to persist their object states.
In any case, this is what we do to manage chain states internally to each validator. When a query reaches a worker, this one will load the chain state from shared storage (and take a global lock). State changes are then continuously (and atomically) persisted until the chain is not active and the lock is released.
Maybe I don’t describe it accurately. For example, in our web2 micro services, if we would like to subscribe to some service, we will create a connection then keep it. After that server will be able to publish new message to client. But if the connection is broken, we have to do a lot of work to keep consistency of the object processed by the connection.
But the global lock, shared storage and state change process explain many things, .