I would like to talk a little about microservices, and i try to step up by real life examples.
Think there is an obsessed mother with four children, she is taking care of all the following things herself,
and she has to serve the guest as well.
She is too obsessed with the routine and the workplace so and cannot change them.
It changes the whole layout when jobs need a change.
- Child care
- Washing Dishes
- Home Cleaning
- Guest hospitality
On the other side, there is another mother who doesn’t want to squeeze herself and wants to use her resources efficiently.
- The eldest child looks after the others
- A child is washing clothes
- A child washing dishes
- A child cleans the house
- The mother can both iron and serve to the guests
In addition, the order and routine can be changed as the mother wishes, and even the children can carry out these tasks independently.
In the first example, we can illustrate the software with long codes that we call monolithic brought from the past to the present day.
Even we have virtualization in our lives;
- The First we build a virtualization layer
- Install and update the operating system on it
- Meet application requirements on the operating system
- Then install the applications
Monolithic structure has long test processes and it is highly probable that the error is overlooked.
Although necessity of reviewing all processes when changes occurs are required.
Talking about the microservice structure, they’ve been around for 20 years, starting with FreeBSD and Solaris.
- Services can take names such as zone, container or pod.
- In each container, minimal library and hardware resources required by the software are sufficient.
- Processors, memory and disk resources are being used much more efficiently.
- After it becomes a compatible infrastructure, it becomes environment agnostic so works on windows, linux, unix or even cloud.
- Updates and test becomes very quick restoring to working version if necessary can be performed.
- In case of a problem, the entire structure is not affected, but regarding service.
If they are so good, why not use microservices everywhere?
- In fact, the utilization rate is increasing dramatically, and as the use of cloud architectures increases, so will the use of microservices.
- Past habits are not easily changed, companies have invested heavily in classical structures and have been running these software for many years.
- Ease of use, how to ensure security issues such as people raise questions and are afraid of change.
- Large companies make serious investments in this regard. VMware will provide microservice support with vSphere 7 (Project Pacific Tanzu) as native.
- This means that the biggest virtualization company in the market will be able to offer all of its capabilities such as ease of use, business continuity and disaster recovery to microservice users. Even Microsoft has developed solutions both on-prem and Azure.
It will take a long time to replace the classic software that has been used for decades and is large, complex but at the center of life.
Maybe they’ll always be used, let’s wait and see.