Hacker News new | past | comments | ask | show | jobs | submit login

Microservices are only used to scale engineering teams, not software. You can have a monolith that is still deployed in many different capacities or roles to get any optimization benefits. Microservices are needed because large groups aren't good at working together on software without very rigid and well-defined boundaries.



It would be nice to be able to make rigid and well-defined boundaries without having to add the overhead of serialization and network boundaries.


    public interface MyWellDefinedBoundary {
        ...
    }
;)

Edit: I should say this is what OSGi was good for. Now it's been replaced, its need is greater than ever.


> well-defined boundaries without having to add the overhead of serialization and network boundaries

Type systems and APIs do that, but only within a single language.


This is the correct answer. Microservices are a software engineering optimization from the socio-technical perspective primarily. 100%.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: