Remix.run Logo
const_cast 6 days ago

> You can't do the opposite though, make a monolith and spread it out on 10 servers.

Yes you can. Its called having multiple applications servers. They all run the same application, just more of them. Maybe they connect to the same DB, maybe not, maybe you shard the DB.

alkonaut 5 days ago | parent [-]

That’s obviously not what I meant. I meant running different aspects of the monolith on different servers.

lelanthran 5 days ago | parent | next [-]

> I meant running different aspects of the monolith on different servers.

Of course you can. I've done it.

Identical binary on multiple servers with the load balancer/reverse proxy routing specific requests to specific instances.

The practical result is indeed "running different aspects of the monolith on different servers".

sfn42 5 days ago | parent | prev | next [-]

That's not a problem in a well designed ASP.NET project. Just create a new web API project, move a controller into it and copy/paste the necessary boilerplate into Program.cs, set up config etc for it and configure cicd to deploy it separately, there you go. Less than a days work.

You can also publish libraries as nuget packages (privately if necessary) to share code across repos if you want the new app in it's own repo.

I've worked on projects with multiple frontends, multiple backbends, lots of separately deployed Azure functions etc, it's no problem at all to make significant structural changes as long as the code isn't a big ball of mud.

I always start with a monolith, we can easily make these changes when necessary. No point complicating things until you actually have a reason to.

5 days ago | parent | prev [-]
[deleted]