Software Development

5 Questions Everyone’s Asking About Microservices (Question 2)

When discussing the development impact on existing applications while transitioning to microservices, there are five questions that keep popping up in one form or another. They are the same regardless of the size of the organization and seem to become part of strategy discussions later in the process as organizations move towards microservice architectures.

These articles cover questions that everyone should ask about microservices. Their based on experiences from interactions with organizations in the process of conquering microservices for existing development and for delivering modern applications.

 Previously I covered the first question around the performance impact of microservices. In this second article I’ll take a look at dealing with state after splitting up monolithic applications.

State and monoliths

After the initial discussion around the first question, it’s usually followed by issues of how to deal with state in a monolithic application.

“How to deal with services that get split off from their monolith usage and are stateful, where we want to use the benefits of a container platform like OpenShift?”

There are two types of
stateful in relation to applications:

  1. Building a business application that uses either in-memory state or database state.
  2. Building a specific database engine and need highly performant, even low-level, access to the underlying disk.

The first option is the mainstream way of developing and deploying cloud-native applications with their
stateful components, while still splitting out microservices, using a container platform like OpenShift based on Kubernetes.

Option two is another story and is often best left to specialized vendors. This is because these types of solutions can go deep enough to involve maintaining extensions to operating system kernels themselves. It makes more sense to focus on your domain specific business value and delivering that to your customers.

Next time in this series of articles, a look at dealing with data across a distributed microservices architecture.

(article co-authored with Burr Sutter)

Published on Java Code Geeks with permission by Eric Schabell, partner at our JCG program. See the original article here: 5 Questions Everyone’s Asking About Microservices (Question 2)

Opinions expressed by Java Code Geeks contributors are their own.

Eric Schabell

Eric is Chronosphere's Director Technical Marketing & Evangelism. He's renowned in the development community as a speaker, lecturer, author and baseball expert. His current role allows him to coach the next generation of technical marketers & evangelists helping the world to understand the challenges with cloud native observability. He brings a unique perspective to the stage with a professional life dedicated to sharing his deep expertise of open source technologies and organizations. Follow on https://www.schabell.org.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
Back to top button