I'm evaluating ArangoDb+Foxx for a multi-tenant application.
Currently I have a coordinator service in _system
that creates new databases and installs a single service into that db that bootstraps it and serves as the api layer.
Are there optimization concerns with having one monolithic Foxx service that handles an entire api stack? Or is it better to split it up into many smaller services so requests can be spread to different V8 contexts?
Finally, with a service or even many services per db/tenant, do you now need to update every single service for every tenant when you need to update? That sounds like a lot of room for error and bugs when you try to apply rolling or blue/green deployment. Is there a better way of handling multi-tenant apps with Foxx in a cluster? Perhaps a single service at the _system
level?
Thanks!