[META] - Separate out jhub-apps from hub pod for better scaling
Feature description
jhub-apps at the moment runs as a subprocess in the jupyterhub pod, which limits scaling it beyond the hub pod. If we create a separate service independent of hub, then it would be easier to scale it independently. This issue comprises of two tasks:
- [ ] separate pod for jhub-apps
- [ ] implement autoscaling for jhub-apps to be able to scale it based on load.
Value and/or benefit
jhub-apps will be able to process lot more concurrent requests, hence improving the user experience.
Anything else?
No response
Please include @tylergraff in a discussion to capture the current architecture and the proposed architecture.
currently available diagrams on jhub-apps for ref. https://jhub-apps.nebari.dev/docs/concepts/infrastructure-architecture
@krassowski comments:
There are some old stress testing scripts which might or might not be helpful:
https://github.com/IBM/jupyter-tools/blob/master/docs/stress-test.md
https://github.com/yuvipanda/hubtraf