MicroServices

From Wikipedia, for those who are unaware:

Microservices are a more concrete and modern interpretation of service-oriented architecture (SOA). As in SOA, services in a microservice architecture (MSA) are processes that communicate with each other over a network in order to fulfill a goal. Also, as in SOA, these services use technology-agnostic protocols. Microservices’ architectural style is a first realisation of SOA that has happened after the introduction of DevOps, and this is becoming the standard for building continuously deployed systems.

Unlike SOA, microservices services are small and the protocols lightweight. The benefit of distributing different responsibilities of the system into different smaller services is that it enhances the cohesion and decreases the coupling. This makes it much easier to change and add functions and qualities to the system at any time. It also allows the architecture of an individual service to emerge through continuous refactoring, and hence reduces the need for a big up-front design and allows for releasing software early and continuously.

Not the best definition, as it is a little too technical. What it’s really saying is that you need to break apart all the processes that need to be done and make them tiny apps. These apps are developed individually and put into the network. Thanks to standards, all these tiny pieces can then be put together into a bigger whole that is easy to maintain and is robust, mainly because it’s just tiny bits that are being changed and maintained, not some huge monolithic structure.

Now that’s very different to the old bank systems I’m used to dealing with. The old systems I dealt with involved thousands of line of code, and needed heavy change controls as any code update could ripple across the whole system and break it. In a microservice architecture, it’s the other way around. You can change anything, anytime, because they’re all independent, separated and distributed

http://thefinanser.com/2016/09/developer-driven-bank.html/