To guarantee multi-tenancy we introduce pooling of our python runner. The idea is to have throw-away instances of the runner. After each request - response loop, these get discarded and automatically restarted by the underlying statefulset.
A non-functional requirement is to use a distributed data structure to ensure we can still horizontally scale.
To guarantee multi-tenancy we introduce pooling of our python runner. The idea is to have throw-away instances of the runner. After each request - response loop, these get discarded and automatically restarted by the underlying statefulset.
A non-functional requirement is to use a distributed data structure to ensure we can still horizontally scale.