Hi everyone,
I'm exploring ways to reduce compute costs for Databricks Apps during non-business hours.
I understand we can use Databricks Jobs to stop Apps on a schedule, but I'm confused about the on-demand part: If the App is stopped and a user tries to access its URL, how can we automatically start the App and then show the normal App UI?
I've seen a few approaches mentioned:
- Model Serving with "scale_to_zero"
- Ingress / reverse proxy
- Azure Functions / Container Apps
- Databricks Apps Start/Stop APIs
I'm looking for approaches that are actually working reliably, preferably Databricks-native.
Also, if we put something like Azure Application Gateway/Ingress in front:
- How is Databricks authentication/session information passed to the App?
- Can users access it through a custom URL such as "apps.company.com/team-a/my-app" while still seeing the normal Databricks App UI?
- Does Databricks officially support this kind of setup?
The desired flow is simply:
Scheduled stop โ User accesses URL โ App automatically starts โ User sees the App UI.
Would appreciate any real-world implementations or recommended architecture.
I just need a workaround for now