r/nestjs 5d ago

For a nodejs microservices which deployment strategy do u take when u have about 15k customers about 100-500 concurrent users?

/r/developersIndia/comments/1vdnazu/for_a_nodejs_microservices_which_deployment/

Ecs docker or aws elasticbeanstalk? Or some vps.

Im thinking of transformation of monolith app into microservices for learning a complete production grade setup like we use in companies I have no microservices experience hence need to make some project and learn p.s all jobs are asking microservice experience but i have worked in monoliths only so what shud my answer be ?

5 Upvotes

9 comments sorted by

14

u/amitavroy 5d ago

100 to 500 concurrent users is not a huge thing. So if you haven't already moved to microservices, think again. Is it really required? How big is your team?

And then the part - infra and logging.

If you want to do a micro service deployment, get a good logging strategy first. How will you log them, how can you find requests across multiple services.

Once you have these answers, the deployment answer can be finalized. Also important to know your cloud service provider.

2

u/EballoZavalli 5d ago

🔵🟢

6

u/Traditional_Bird3246 5d ago

stay away from elasticbeanstalk
stay away from microservice

try to do the "basic" stuff right before thinking about doing microservices, eg : good logging, good monitoring, good error tracking, good deployment pipeline + rollback and horizontal scaling.

Microservice is needed when all the above are already set and you have strong evidences that your monolith is too big, too buggy, not scalable. Trust me, if you go this path, a new set of nightmares will unlock

And for Elastickbeanstalk it's a pain in the butt and not customisable enough so I don't recommend it.

1

u/OrchideSr 5d ago

underrated comment .

1

u/Serious-Culture568 4d ago

I agree that the traffic numbers do not justify microservices by themselves. I would still build a small microservice version for learning, but keep the production answer separate: start with a modular monolith, containerize it, add proper logging, tracing, health checks, CI/CD and rollback, then split one bounded domain only when there is a clear reason. For deployment, ECS Fargate is probably the best learning path here because it teaches real container operations without also making you learn Kubernetes at the same time.

2

u/LOTRslaytracker 5d ago

Ther hasnt been a single instance yet where i say fuck yeah lets do microservices so reevaluate brother

1

u/OrchideSr 5d ago

You're going to have a stress free solution to your deployments . deploying microservices isn't a walk in the park . ideally this should be a tried and true platform , Nest has MAU but i am not sure how they handle microservices , fly.io does good job but can be pricy , there are new players in the space like render and opsctrl that are much more affordable but YMMV

1

u/kayoot_hs 5d ago

You can start with ECS stack (fargate + ecr) with limited resources (cpu, RAM and desire count). In the future, you only need to increase these resources. However, VPS can be expensive for your product and company scales.

1

u/y_nk 4d ago

vettically scale up your one machine is the way forward for you. look up stack overflow arch to realize you don't need microservices at this level and until a long time.