Kubernetes Init Container Pattern

Overview Design Patterns serve as reusable and replicable solutions for common challenges in software and architectural design. They advocate for the development of highly cohesive and loosely coupled applications. In today’s era of microservices, these patterns extend beyond traditional software design and find application in infrastructure and deployment. This article explores one such design pattern—the […]

Spring Boot CockroachDB Integration

Overview: Applications have become very complex & user’s expectations have changed over the years! Applications nowadays have to be resilient and fault tolerant. It is easy to scale in / out our applications when they are designed stateless. But what about Database? Database is supposed to be a stateful application! How can we scale out

Spring Boot CockroachDB IntegrationRead More »

MicroServices – How To Share DTO (Data Transfer Objects)

Overview: Over the years, MicroServices have become very popular. They are smaller, modular, easy to deploy and scale etc. However MicroService architectures do have some challenges. MicroServices have specific responsibilities. In order to complete an application workflow / a task, multiple MicroServices might have to work together. For example, an user would like to buy

MicroServices – How To Share DTO (Data Transfer Objects)Read More »

Distributed Tracing In Microservices – Jaeger With Spring Boot

Overview: In this tutorial, I would like to show you how we could enable Distributed Tracing In Microservices by using Jaeger with Spring Boot. Distributed Tracing In Microservices: There is a quote that ‘Troubles do not come alone and they would like to arrive in group‘. So are Microservices! They do not come alone! We

Distributed Tracing In Microservices – Jaeger With Spring BootRead More »

spring webflux error handling

Spring WebFlux Error Handling

Overview: In this article, I would like to show you Spring WebFlux Error Handling using @ControllerAdvice. Spring WebFlux Error Handling: Developing Microservices is fun and easy with Spring Boot. But anything could go wrong in when multiple Microservices talk to each other. In case of some unhandled exceptions like 500 – Internal Server Error, Spring

Spring WebFlux Error HandlingRead More »

MicroServices – DTO to Entity & Entity to DTO Mapping – Libraries Comparison

Overview: In this article, I would like to show you the performance of few libraries when we do the Entity to DTO conversion or vice versa. Goal: I have an Entity class as shown here. public class Car { private long id; private String make; private int numOfSeats; private Date releaseDate; private Engine engine; //getters

MicroServices – DTO to Entity & Entity to DTO Mapping – Libraries ComparisonRead More »

Kubernetes Liveness Probe vs Readiness Probe

Overview: In this article, I would like to show you the difference between the Kubernetes Liveness probe vs Readiness probe which we use in the Pod deployments yaml to monitor the health of the pods in the Kubernetes cluster. Need For Probes: Pod is a collection of 1 or more docker containers. It is an

Kubernetes Liveness Probe vs Readiness ProbeRead More »

Best Practices – Inspecting Selenium Tests Code Quality Using SonarQube

Overview: In the good old days, automation scripts were mostly record and playback! That was because most of the people who were doing automation were manual testers turned into automation engineers. It was rare to see a a good framework for automated testing. Now situation is completely different. Thanks to DevOps process – everyone understands the

Best Practices – Inspecting Selenium Tests Code Quality Using SonarQubeRead More »

Selenium Docker Integration Through Jenkinsfile – Managing Local Docker Registry

Overview: We already have seen few articles on Selenium Docker Integration Through Jenkinsfile series. If you have not read the Part 1 to 3, I would request you to check below. Selenium Docker Integration Through Jenkinsfile – Part 1 – Setting Up Tests & Dependencies Selenium Docker Integration Through Jenkinsfile – Part 2 – Building Docker Image &

Selenium Docker Integration Through Jenkinsfile – Managing Local Docker RegistryRead More »

Selenium WebDriver – Real Time Test Metrics Using Grafana & InfluxDB

Overview: Running automated regression on a daily basis as part of daily build is inevitable nowadays! It is cool to find & report the issues as soon as they are introduced. But it is very painful to maintain hundreds of automated tests & remote parallel execution! Once you have a huge automated regression test suite in place,

Selenium WebDriver – Real Time Test Metrics Using Grafana & InfluxDBRead More »