I don't see anyone mentioning a definition of microservices... How can you talk about it if you don't define it?
I've split up an application for a project into separate containers with docker-compose. They shared some environment state with a dotfile. I don't have to reinvent the wheel and can just pull some services into it and tag them so I can easily rollback and roll forward. I can offload storage with Docker's storage driver. The services talk through sockets, so it's easy to verify the uptime. The services are implemented in different languages, because I don't believe that there exists one golden language that can solve all problems.
Is that microservices? I don't know, but it works really great and it doesn't feel like there's any overhead.
Another example. I work in a team where two services use JSON schema validation, and they can't be reconciled. Agreement between schemas takes so much overhead, because there are different expectations, leading to 90% of the time discussing schema changes in pull requests.
Working hard can become very cumbersome and/or annoying to deal with from a team perspective if you don't align with your team/customers/stakeholders/etc.
I like this approach and thought about it as well.
The only thing holding me back is that it's just so much effort. It's frustrating that we need to work-around MacOS. That's why I decided to refuse to update and I want to sit out Mojave until EOL. There are a few known problems, but the workarounds are well known. My experience has been good so far.
I don't see the value proposition of this idea, because like others have said, there are a lot of solutions to this problem like Facebook Events, WhatsApp groups, and what not.
However, some acquaintances of mine have recently launched a (apparently successful) messaging app for new university students to the university they attended. Their users are in 80 countries and spend 30 minutes per day on the app messaging each other. So I guess there are still niche cases.
I've split up an application for a project into separate containers with docker-compose. They shared some environment state with a dotfile. I don't have to reinvent the wheel and can just pull some services into it and tag them so I can easily rollback and roll forward. I can offload storage with Docker's storage driver. The services talk through sockets, so it's easy to verify the uptime. The services are implemented in different languages, because I don't believe that there exists one golden language that can solve all problems.
Is that microservices? I don't know, but it works really great and it doesn't feel like there's any overhead.
Another example. I work in a team where two services use JSON schema validation, and they can't be reconciled. Agreement between schemas takes so much overhead, because there are different expectations, leading to 90% of the time discussing schema changes in pull requests.