Elasticsearch is a great example of a modern monolithic application
twitter.com
twitter.com
But yeah...having used similarly designed apps(including a lot of apache project apps),it is a good design but only because of the specific use-case. Full blown apps (like ones that would use ES as a backend) might need to be non-monolithic.
Curiously,does the author consider docker-deployed apps monolithic?
I admit that my definition is not necessarily universal, but IMO the characteristics I listed are all highly desirable. I pushed for this model when I worked at Amazon (an AWS service as 1 monolith) and I've seen it work great even at large scale (close to 10K hosts, millions of requests per second, etc).
Now that we have tools like docker-compose, would it not be possible to spin up all the dependency apps in a single command, so as to preserve the character of a monolithic app?
True of every SaaS and most applications. Take every Office product, for exampe
I guess I don't understand what the author's point is.
The "micro" part just seems to cause confusion in every conversation I have about service based architectures.
Some people's definitions of microservices are that they are separated business domain, with each development team focusing on their business processes. Therefore they can reflect reflect Conway's law. Those teams develop autonomous services which communicate with the services of other teams (e.g. the invoicing team build services to interact with the sales team).
In smaller companies a single team, or indeed each team in a larger company, can have multiple microservices, but there are some qualities that would be needed to truly fit the microservice definitions.
If you haven't read Martin Fowler's article on Microservices then it's a good start: https://martinfowler.com/articles/microservices.html There's a side bar on that which asks "How big is a microservice?"
Of course Sam Newman is also a great resource for microservice principles: https://vimeo.com/131632250