After reading the Stateful Functions documentation, I am left wondering how remote stateful functions scale.
The documentation mentions that the use of remote functions allows the state and compute tiers to scale independently. But the documentation seems to imply that only a single instance of a function type can execute at a time per worker ("*When an application starts, each parallel worker of the framework will create one physical object per function type. This object will be used to execute all logical instances of that type that are run by that particular worker.*") That would seem to tie and limit the parallelism of the compute layer to that of the storage layer even when using remote functions. Can a worker execute multiple concurrent remote stateful functions of different types? Can a worker execute multiple concurrent remote stateful functions of the same type with different keys? If a worker can execute multiple concurrent remote stateful functions of the same type with different keys, does it ensure their output is ordered like its inputs?