Running sonarqube analysis as part of your Gradle build

Sonarqube provides a way to analyse our code and find code quality issues with static code analysis. Running Sonarqube helps a developer to write better code and so we must run sonar analysis as frequently as possible. However that is easier said than done. The reason for that is that in most organisations we have … Continue reading Running sonarqube analysis as part of your Gradle build

Practical Guide on Unit Tests and Integration Tests

In programming whenever we are building any system we should always back it with proper testing. The intention behind these tests should be to cover what ever we have written. It helps in catching regression issues when we are working on different parts of the application. These tests vary in their scope and can have … Continue reading Practical Guide on Unit Tests and Integration Tests

Garbage Collection In Java

Garbage collection is a way of collecting and discarding stale objects in JVM and releasing the memory so that it can be reused to store live objects. All Garbage collection implementations has mainly three passes MARK: Garbage collector marks the stale objects SWEEP: It then reclaims the memory allocated to the objects marked in the … Continue reading Garbage Collection In Java

Securing service to service communication with JWT

Most of us have worked with services where we have a separate authenticator module or an IDP service which we invoke as the first step in our web workflow. Only once the user is authenticated we call other business services. This is a typical approach several architectures takes. This makes our workflows simpler as once … Continue reading Securing service to service communication with JWT

Integration tests using Docker

Need for integration testing: For all our projects we generally create two types of tests Unit Tests Integration Tests Unit tests are comparatively simple as we validate a block of code which has some business logic. While doing so, we mock any external calls like external API, database read/updates, etc. This helps us to make … Continue reading Integration tests using Docker

Multi Module Monolithic to Microservices

It is a summary of almost all the things which you have to take care while doing migrating from your monolithic. Each step as discussed here can be a separate blog in itself and so my intention here is not to go deep into each aspect of the migration but to give you a list … Continue reading Multi Module Monolithic to Microservices

Understanding CRI-O

Developer perspective into OCI, CRI, runc and cri-o. Recently I came across cri-o when I was setting up some docker build tasks and was planning to integrate it with OpenShift pipeline. My primary task was to build my Spring boot application but was introduced to a new term cri-o. I try to understand how cri-o … Continue reading Understanding CRI-O

Understanding more about Kubernetes Dashboard

Kubernetes dashboard provides a graphical user interface which can be used to view all the kubernetes constructs in our cluster. We will be using MiniKube for this blog post which enables us to run a Kubernetes cluster on a single machine. To check if dashboard is enabled execute the below command. From the above command … Continue reading Understanding more about Kubernetes Dashboard

Deploying Angular 6 Application on Kubernetes

In a previous post we have seen how we can deploy a Spring Boot application on a Kubernetes cluster. I have shared a step by step approach in that post where we start by creating a simple application, then create a docker image for the app and finally we create Kubernetes templates for deployment and … Continue reading Deploying Angular 6 Application on Kubernetes

Rolling updates on Kubernetes

Kubernetes is one of the most widely used container orchestration tool at present. In the earlier post, I have explained how to deploy your spring boot application on Kubernetes cluster. In this post, we will see how we can instruct Kubernetes to start a rolling update so that we can release a new version of … Continue reading Rolling updates on Kubernetes