Engineering the Future of Software
29–31 Oct 2018: Tutorials & Conference
31 Oct–1 Nov 2018: Training
London, UK

Putting microservices on a diet with Istio

15:5016:40 Monday, 29 October 2018
Cloud native
Location: Buckingham Room - Palace Suite
Secondary topics:  Framework-focused, Hands-on
Average rating: ***..
(3.69, 13 ratings)

Who is this presentation for?

  • Developers, architects, and those in operations

Prerequisite knowledge

  • Basic knowledge of the key abstractions of Kubernetes
  • Experience implementing microservices

What you'll learn

  • Understand the overall architecture and main components of Istio
  • Learn how to apply different traffic management features to a microservice mesh, add diagnosability (logs, metrics, traces) to microservices using Istio, and do mutual TLS between microservices with Istio


In a microservice world, things become more complex. Platforms such as Kubernetes address a lot of the complexity; they handle resource isolation and utilization, networking, and deployments nicely. But a lot of the involved complexity such as load balancing, rollout scenarios, circuit breaking, retries, rate limiting, observability, tracing, and transport security is still left up to the development teams.

Of course, you can address all of these challenges in your microservices programmatically using popular open source components such as Hystrix, Ribbon, Eureka, the EFK Stack, Prometheus, or Jaeger. But unfortunately, this approach can quickly lead to excessive library bloat, and suddenly your microservices are not quite so micro anymore.

All this might seem acceptable if you’re on a single, consistent development stack like Java EE or Spring Boot. But tackling these complexities becomes even more challenging if you’re dealing with multiple stacks and multiple frameworks, to say nothing about dealing with legacy applications that you can’t modify to retrofit these requirements.

In comes Istio to the rescue. It is a so-called service mesh that addresses many of the cross-cutting communication concerns in a microservice architecture. Think of Istio as AOP (aspect-oriented programming) for microservice communication. Instead of implementing everything directly within your services, Istio transparently injects and decorates the desired concerns into the individual communication channels.

Mario-Leander Reimer offers an overview of Istio and explains how it addresses the inherent complexities in microservice architectures. Mario-Leander briefly discusses the conceptual architecture and the main building blocks of Istio before diving into several examples deployed on a live Kubernetes cluster to demonstrate the different traffic management features, as well as diagnosability and security.

Photo of Mario-Leander Reimer

Mario-Leander Reimer


Mario-Leander Reimer is a principal software architect at QAware, where he’s responsible for several projects concerned with the cloud native evolution of legacy applications, as well as a passionate developer and a #CloudNativeNerd. He’s continuously looking for innovations in software engineering and ways to combine and apply state-of-the-art technology in real-world projects. He’s a regular speaker at national and international conferences and teaches cloud computing and software quality assurance as a part-time lecturer.

Comments on this page are now closed.


Pentita Laotrakool | SOFTWARE ENGINEER
31/10/2018 9:00 GMT

Thank you so much,
Sorry, I just realize that the slide will be upload to this site as well.

Best Regards,
Pentita Laotrakool

Picture of Mario-Leander Reimer
29/10/2018 19:43 GMT

Hey Pentita,

sure. The slides are available either via the conference site or via speaker deck here:

The source code for the demo, including all YAMLs and the source code of the Java EE 8 microservices can be found here:

Regards, Leander

Pentita Laotrakool | SOFTWARE ENGINEER
29/10/2018 17:11 GMT

Could I have the link to the slide that you provided in today session? I did not catch the url on time when it shows on screen.

Thank you :)

Best Regards,
Pentita Laotrakool