Microservices Characteristics

If you are wondering what are some of the characteristics of micro-services, I hope you find the brief blog useful.

Microservices are decentralized by nature. A single unifying schema or data model is not required from them. They also do not have to reside close to each other geographically.

Microservices are independent of each other. They can be deployed, upgraded, maintained by independent teams and also on independent compute and storage. For instance one team may be responsible for front end and another may be responsible for backend.

Microservices are polygot in nature, they don’t follow “one size fits all” approach. They take independent approaches to programming tools, and also programming languages. For instance, one team may choose Java, and another team may choose Golang for programming.

Microservices are good at doing “one thing” well. They don’t have to do more than one thing. For instance, in case of a social network online application, a microservice may be responsible for just authentication, and nothing else.

Microservices are independently managed. They can be upgraded or changed independent of each other.

Microservices are ‘black boxes’, in the sense that they hide the implementation complexity from each other. Using a previously agreed communication method, such as REST API, they can avoid knowing details about how each other work.

Microservices Characteristics
Microservices Characteristics

Some of this material is credited to AWS whitepaper on microservices that can be found here.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s