I’m thinking about how to configure Shiny Proxy in a good way to save as much as possible on ECS.
You always need a fargate spot with shiny proxy running, and this can use less hardware (say, 0.25vCPU) to save money, which by itself will cust around $10 to $20 per month.
Then, two scenarios come into mind:
- Leave the default config. Each user spin a fargate job which will initialize automatically and turned off after the user leaves. This has de advantage of slow startup times.
- Use container pre-initialization. This allows to share 1 container with more users (say, up to
seats-per-container: 5
to get 5 users on the same container), but then must always run 1 fargate job, even when no users are logged (because we need to setminimum-seats-available
to at least 1).
In the ideal world, we could have a mix of these 2 approaches: start a new container able to hold N users, but only if at least 1 user starts a given app.
What do you think? What is your experience with ECS and its costs?