Microservices architecture as a service-oriented architecture composed of loosely coupled elements that have bounded contexts. It is a software architecture style in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. These services are small, highly decoupled and focus on doing a small task, facilitating a modular approach to system-building.
Microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.
Microservices, in some ways, make for a better developer experience too, which allows you to grow your business more rapidly. More and more people are flocking to try the microservices architecture because its modularity of small, focused, quasi-independent services allow businesses to deploy and scale services more easily. This segmentation also allows smaller teams that create smaller code bases. Microservices also lend themselves to agile, scrum and continuous delivery software development processes with shorter lifecycles. This architecture distinguishes itself from service-oriented architecture (SOA) because each microservice only belongs to one application, not multiple.
Microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.
Microservices, in some ways, make for a better developer experience too, which allows you to grow your business more rapidly. More and more people are flocking to try the microservices architecture because its modularity of small, focused, quasi-independent services allow businesses to deploy and scale services more easily. This segmentation also allows smaller teams that create smaller code bases. Microservices also lend themselves to agile, scrum and continuous delivery software development processes with shorter lifecycles. This architecture distinguishes itself from service-oriented architecture (SOA) because each microservice only belongs to one application, not multiple.
ref:
Microservices overview - http://martinfowler.com/articles/microservices.html
Microservices Architecture Pattern - http://microservices.io/patterns/microservices.html
Microsoft Azure Service Fabric and the Microservices Architecture - https://msdn.microsoft.com/en-us/magazine/mt595752.aspx
Microservices Wiki - https://en.wikipedia.org/wiki/Microservices
Adopting Microservices at Netflix: Lessons for Architectural Design - https://www.nginx.com/blog/microservices-at-netflix-architectural-best-practices/
Four-Tier Application Architecture - https://www.nginx.com/blog/time-to-move-to-a-four-tier-application-architecture/
Microservices Architecture for Enterprises - https://www.thoughtworks.com/insights/blog/microservices-architecture-for-enterprises
Misc -
- http://nordicapis.com/microservices-architecture-the-good-the-bad-and-what-you-could-be-doing-better/
- http://capgemini.github.io/architecture/is-rest-best-microservices/
- http://www.infoworld.com/article/2682502/application-development/application-development-what-microservices-architecture-really-means.html