Great evening with MVP and Java champion Edson Yanaga Learned a lot about deploying using Kubernetes/Openshift.

This month, I had a pleasure to meet Brazilian Java Champion and MVP, Edson Yanaga, Director of Developer Experience at Red Hat (

Aside from this, Edson is also a published author and a frequent speaker at international conferences, discussing Java, Microservices, Cloud Computing, DevOps, and Software Craftsmanship

You can follow him on twitter at @yanaga (

Title of the presentation was ‘Cloud-Native Applications with Kubernetes’

In a distributed system with multiple moving parts, which is the case of Microservices, we can’t allow that a single complement downtime breaks down the entire system. Dealing with stateless code is easy, but it gets much harder when we have to deal with persistent state. In this scenario, zero downtime migrations are paramount to guarantee integrity and consistency.

Within all the Microservices characteristics, undoubtedly the one that creates more perplexity is the “one database per Microservice”. However, very few teams have the privilege of starting something from scratch: most of the times they have a legacy database that will survive any new implementation.

In legacy systems you traditionally have a model that adopts transactions, strong consistency, and CRUD. In order to guarantee integrity and consistency with zero downtime, we must reassess some of these concepts. In this talk we’ll discuss strong and eventual consistency, CRUD and CQRS, Event Sourcing, and how these techniques relate to each other in many different integration and evolution strategies for relational databases. We’ll explore Views, Materialized Views, Mirror Tables, Event Sourcing/Streaming, Data Virtualization, Change Data Capture, and how these strategies enable you to build up a Microservices architecture from a legacy monolithic relational database.

Download Edson’s recently released O’Reilly book (

Kubernetes for Java / Docker Developers

Yes, Docker is great! We are all very aware of that but now it’s time to take the next step: wrapping it all and deploying to a production environment. For this scenario, we need something more. For that “more” we have Kubernetes by Google – a container platform based on the same technology used to deploy billions of containers per month on Google’s infrastructure.

Ready to leverage your Docker skills and package your current Java app (WAR, EAR or JAR)? Come to this session to see how your current Docker skillset can be easily mapped to Kubernetes concepts and commands. And get ready to deploy your containers in production!

Below you will find some topics nicely explained during presentation and demo.

  • Understanding of what cloud-native means and how to use it to influence positive business outcomes
  • How integration has evolved to create, connect and manage cloud-native APIs
  • How service-mesh technology like Istio can solve the challenges introduced with cloud-native applications
  • How Quarkus, the Cloud-Native and Kubernetes-Native platform, is changing the way that we develop Microservices, and Function as a Service/Serverless workloads

Thank You, Edson!