As previously discussed, the term “microservice” covers a software development paradigm that has grown from contemporary practices that are intended to increase the speed and efficiency of developing and managing software solutions at scale. Microservices is more about applying a set of principles and architectural patterns than it is about architecture itself. Each microservice lives independently, but are depended upon by one or more business applications. All microservices in an enterprise are deployed into production at their own timeframe, either on-premise or in the cloud or a mixture of both. Each service exists independently, but the enterprise as a whole depends on each toa greater or lesser degree.
.NET Core provides an ideal platform for building and operating a microservice based enterprise. It is truly Object Oriented, highly performant, and modern, continuously evolving language incorporating many of the most useful “design patterns” natively, such as Factories, Templates, Builders, Iterators and of course, Model-View-Controller, along with many other standard patterns to standardise and speed up development of your services.