4 ms·
This makes me wonder, are there any systems that make it easy to build a modular monolith that can relatively easily be split into microservices in the future?
by tlrobinson 9y ago
This makes me wonder, are there any systems that make it easy to build a modular monolith that can relatively easily be split into microservices in the future?
Erlang (OTP?) comes to mind (though I have very little experience with it so I could be off)
- malyk 9y agoRails Engine's are one way, though I don't find them to be a particularly elegant solution.
- bpicolo 9y agoIt's totally possible to write code that's straightforward to port later. I'd say the biggest blockers tend to be database and code-organization related. If you make a component that is the sole entrypoint to it's concerns, gets it's own database, and have an ORM or database context layer that is capable of dealing with that, moving to a microservice is as simple as taking that same code, exposing an http layer to it, and making your original interface call to the service instead. If other code is joining into the relevant tables, skipping said interface and doing it's own thing with the guts of it, you'll have issues. This can of course be done in any language, really, though database tooling can definitely vary in ease of doing it