DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
View Events Video Library
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Integrating PostgreSQL Databases with ANF: Join this workshop to learn how to create a PostgreSQL server using Instaclustr’s managed service

Mobile Database Essentials: Assess data needs, storage requirements, and more when leveraging databases for cloud and edge applications.

Monitoring and Observability for LLMs: Datadog and Google Cloud discuss how to achieve optimal AI model performance.

Automated Testing: The latest on architecture, TDD, and the benefits of AI and low-code tools.

Related

  • Designing Databases for Distributed Systems
  • Microservices With Apache Camel and Quarkus (Part 5)
  • Unleashing the Power of Microservices With Spring Cloud
  • Supercharging Productivity in Microservice Development With AI Tools

Trending

  • Five Free AI Tools for Programmers to 10X Their Productivity
  • What Is Kubernetes RBAC and Why Do You Need It?
  • API Design
  • Monkey-Patching in Java
  1. DZone
  2. Data Engineering
  3. Data
  4. Bert Ertman on the Microservices Mindset

Bert Ertman on the Microservices Mindset

Thought leader Bert Ertman offers his thoughts and insights into microservices, including why you shouldn't believe the hype, business agility, and more.

Tori Wieldt user avatar by
Tori Wieldt
·
Dec. 24, 15 · Analysis
Like (2)
Save
Tweet
Share
3.90K Views

Join the DZone community and get the full member experience.

Join For Free

As the term “microservices” climbs its way up the Gartner hype cycle, Luminis fellow and former NLJUG leader Bert Ertman provided a good reality check in his recent JavaOne session called “Microservices for Mortals.”

(Watch an interview with Ertman about the session and check out his slides below.)

A Java champion, coder, and software architect, Ertman has been involved in implementing dozens of large scale systems over the last 20 years. His session on microservices provided insight, humor, and common sense while addressing a number of thorny questions: Exactly what are microservices? More important, do you need them? Are microservices just SOA (service-oriented architecture) repackaged?

Don’t Fall for Microservices Hype

bert ertman“Developers have been doing Ajax, NoSQL, and SOA before the microservices name existed,” Ertman told the audience. The microservices architectural style is particularly well suited to modern software development, Ertman said, because it is all about creating disposable building blocks. But he warned developers not to think a single technology is going to solve all their problems.

Ertman cited the history of SOA as a warning. Vendors got into SOA and productized much of the technology, he said, while promising a panacea. But vendors excessively complicated good advice into what he described as “giant, overpriced hairballs sold as fake middleware.” Now Ertman sees that history beginning to repeat itself as vendors start to release microservices-style products, and he warned developers to beware of false prophets.

Microservices for Business Agility

The essence of microservices, Ertman said, is structuring systems differently. It’s about modularity, separating concerns and addressing business agility through technology.

Microservices are supposed to be about business agility. Having your back to the wall because your current technologies don’t meet your business needs is a good reason to move to microservices. There has been a client-side revolution in both technologies and devices, and often existing infrastructures do not serve them well. For example, Netflix, often seen as the poster child for microservices, had to overhaul its architecture to service its move from sending out DVDs to providing videos online.

From Monoliths to Microservices

“Monolith” is the current derisive term for large, existing applications. But just because an app doesn’t use microservices, it isn’t automatically bad, Ertman said. That said, large existing applications can be hard to work with. They often take long to QA and test cycles build up massive technical debt.

How do you know if you should keep your existing app or move to microservices? The most important measurement is, How quickly can you change your app without breaking things? You must enable your architecture for change. But Ertman warned that moving a monolith to microservices requires a significant investment, starting with metrics and analytics. You must know your current state in detail in order to measure any improvements.

Before you consider moving to microservices, Ertman suggested asking yourself how agile (in both senses of the word) is your shop? Are your continuous integration/continuous deployment pipelines automated? If you are running two-week sprints, but then a six-week QA cycle, you aren’t ready for microservices. You need a solid CI/CD process first, he said. If your build and deploy processes are automated and you have embraced DevOps, then microservices could be a natural next step.

The Microservices Mindset

To make the move to microservices successful, developers have to change their mindset, Ertman noted. First of all, microservices are not meant for reuse (note: SOA was all about reuse). And while most developers were raised to believe that data redundancy is a bad thing, microservices require data redundancy. Ertman recommended separate data stores for each service.

Microservices also require a different attitude toward failure. Many developers believe failure is bad and must be avoided. In a microservices world, though, developers are encouraged to expect that failure will happen and to prepare for it. You should be ready to move to a graceful degradation of service when things fail, with minimal human intervention. After all, despite our best efforts, failure happens all the time, so coping with it shouldn’t be a big deal.

Finally, Ertman said, remember that microservices are hard. To make it all work out right, you need to keep on educating yourself. Don’t listen to just one vendor, he warned. Build a rational thought process that can help you overcome the hype.

If you ask me, listening to experts like Bert Ertman is a good place to start.

Watch an interview with Bert about his session:

Flip through his slides:

Microservices for Mortals from Bert Ertman

microservice

Published at DZone with permission of Tori Wieldt, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Designing Databases for Distributed Systems
  • Microservices With Apache Camel and Quarkus (Part 5)
  • Unleashing the Power of Microservices With Spring Cloud
  • Supercharging Productivity in Microservice Development With AI Tools

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: