Technology That Enables MicroServices
Beginning with the first right foot with technology
The very first step is an extremely important step and that is defining understanding and establishing implementation choices of micro services cross cutting concerns. This step is required regardless of the type of the nature of the initiative, i.e. whether it is brownfield which means transforming an existing ecosystem to desired new ecosystem or green field meaning a completely from scratch brand new system built up. While defining choices, architects in an organisation need to do a trade-off between the standardization and autonomy that is to be given to the teams to take or provide technology and tools decisions.
To begin with a standardized selection of a tool or technology through a rationalized well experimented process is suggested.It then can be followed with an autonomy. The best way to offer autonomy to passionate and prudent people who can take of judgement and deliver value through it. This is in comparison with the standardization approach. Sounds dramatic right?
Let us explore such key areas.
Since micro services is a distributed architecture it needs a fabric which will weave respective set of micro services together and take care of the transaction management, session management, lock management etc.
You also need enablers for transformation like centralized logging, monitoring and tracing etc. These enable you to run the set of micro services in production smoothly, get necessary information and intelligence to understand the functional & non functional behavior of micro services.
Also tool kit decisions are crucial e.g. which version control to you choose, what continuous integration tool to be used, what is to be used for containerization and automated deployment all such aspects are something that need to be explored first and here are the series of articles which explains those.
MicroServices Fabric: These are the core building blocks of the architecture. These blocks weave micro-services structure together.
- Asynchronous Communication
- Caching in MicroServices
- Session, State & Lock Management
- API Gateway: A Key Enabler Of MicroServices
- Exception Management
MicroServices Enablers: These are key ingredients to make the micro-services recipe delicious.