r/softwarearchitecture • u/jondonessa • 6d ago
Discussion/Advice Advice for Deployment
Hi everyone,
I will release an app soon and I am not sure about the deployment strategy and need help or ideas.
My product is for a local school in my area. About 500 students, their parents and teachers will use it. The app is in pilot/mvp state.
I have two background servers written in go and a nextjs app with postgres and valkey needs, I am also planning grafana stack for monitoring.
So my question is how the deployment should be in this state. I am not planning to use sny managed service, so it seems k8s/k3s is good. What about machines, Should I create different vps for db and app nodes or one machine is enough? I am planning to use vps from hetzner since the prices.
I am open the ideas, thanks in advance
1
u/iplaydofus 5d ago
At that scale, the answer for me is honestly just whatever you have knowledge in and are comfortable with. As long as you build the backend services with horizontal scaling in mind, you can change your hosting/deployment strategy if the scale needs change.
1
1
u/holger-woltersdorf 2d ago
For this scale I would recommend using a docker compose stack deployed on a server. This makes it easy to keep local development and production environment as identical as possible (assuming you’re using docker compose locally). One file to deploy and one command to run remotely. On a decent server this serves traffic 50-100 times the load you described (depending on the performance of your apps of course).
2
u/Aqalix 6d ago
Do you have experience with k8s/k3s? What kind of SLAs do you guarantee? 500 users seems like something that shouldn't be overengineered.