- Java 11
- Spring Boot 2.7.x
- gRPC (1.54.0)
- Protocol Buffers (proto3)
- Maven
- WebFlux + Server-Sent Events (SSE) for REST integration
Jul 12, 2025
Building bidirectional Streaming gRPC : A Real-World chat Example
Jul 3, 2025
Building Client-Side Streaming gRPC : A Real-World File Upload Example
This project demonstrates client-side streaming using gRPC with a Spring Boot application. It includes:
A gRPC server that receives file chunks via stream and reconstructs them.
A REST client that accepts
multipart/form-datauploads and streams the file to the server over gRPC.
- Java 11
- Spring Boot 2.7.x
- gRPC (1.54.0)
- Protocol Buffers (proto3)
- Maven
- WebFlux + Server-Sent Events (SSE) for REST integration
π‘ Mastering Advanced gRPC Communication Patterns
Modern distributed systems demand high-performance, language-agnostic communication. gRPC—Google’s high-speed RPC framework—has become a core enabler of service-to-service communication in microservices architectures. While Unary RPCs serve simple request-response models, gRPC shines in more complex, real-time communication through streaming patterns.

In this post, we deep dive into four powerful gRPC communication patterns:
-
Unary RPC
-
Server Streaming RPC
-
Client Streaming RPC
-
Bidirectional Streaming RPC
Building a Server-Side Streaming gRPC Service in Spring Boot: A Stock Ticker Demo
π§ What is gRPC and Why Use It?
This project demonstrates how to implement server-side streaming using gRPC in a Spring Boot application with Java 11. The use case simulates a stock ticker that streams real-time stock prices to the client.
- Java 11
- Spring Boot 2.7.x
- gRPC (1.54.0)
- Protocol Buffers (proto3)
- Maven
- WebFlux + Server-Sent Events (SSE) for REST integration
Jul 2, 2025
Getting Started with gRPC and Spring Boot — A Beginner’s Guide
As microservices become the backbone of modern backend architecture, efficient communication between services becomes more critical. In this post, we’ll explore how gRPC fits into the picture and how you can get started with it using Spring Boot.
Jun 4, 2025
Unlocking Spring Boot Performance: A Guide to Effective JVM Tuning
π§ Why JVM Settings Matter
When we think about speeding up an application, we often think about optimizing code, changing architecture, or rewriting services. But sometimes the real bottleneck is much deeper — in how the Java Virtual Machine (JVM) manages memory, garbage collection, and system resources.
Spring Boot apps run on the JVM. That means by tweaking the JVM's configuration, you can unlock massive performance improvements — without changing your code.
Spring Boot apps run inside the Java Virtual Machine (JVM). The JVM is responsible for managing:
-
Memory allocation
-
Garbage collection (GC)
-
Thread scheduling
-
JIT (Just-In-Time) compilation
-
Native I/O handling
- Most developers never touch JVM flags, but the default settings are designed for general-purpose use — not high-performance production environments.
- Tuning the JVM is like customizing your engine to your terrain. For server applications, especially ones running in Docker or Kubernetes, JVM tuning can unleash massive improvements in throughput, latency, and reliability.
Dec 20, 2023
Building RESTful APIs with Spring Boot and OpenAPI Generator
- In this Post, we will explore how to create RESTful APIs using Spring Boot and OpenAPI Generator. OpenAPI Generator simplifies the process of building APIs by generating server stubs and client SDKs from OpenAPI Specifications.
- We'll go through the steps of setting up a Spring Boot project, integrating OpenAPI Generator, and creating a real-time example API.
Nov 16, 2023
Empowering Flexibility: Dynamic Bean Activation and Deactivation in Spring Boot
- In Spring Boot, you can create multiple beans of the same type by providing different names for each bean. To dynamically activate or deactivate a bean, you can use a configuration property or a condition to control the bean creation based on some conditions.
- In a Spring Boot application, managing beans dynamically can be a powerful tool. One common scenario is creating two beans of the same type and toggling between them dynamically.
Nov 15, 2023
Building an AI-Powered Spring Boot Application from Scratch: A Step-by-Step Guide
- In the ever-evolving landscape of technology, the integration of artificial intelligence (AI) into applications has become increasingly prevalent. In this tutorial, we'll embark on a journey to create an AI-powered Spring Boot application from scratch.
- Whether you're a seasoned developer or a newcomer, this guide will walk you through the process of integrating AI components, opening the door to a wide array of possibilities, from machine learning to natural language processing and computer vision.
Sep 23, 2023
Integrating Azure AD with Spring Boot: A Step-by-Step Guide
- Integrating Azure Active Directory (Azure AD) with a Java and Spring Boot application for secure authentication and authorization involves several steps. Here's a step-by-step guide along with code examples for each component.
Demystifying Identity Providers (IdPs): Key to Secure Authentication
- An Identity Provider π€(IdP) is a critical component of identity and access management systems. It serves as a trusted entity responsible for authenticating and managing user identities within a digital ecosystem.
- The primary purpose of an IdP is to verify the identity of users and provide them with secure access to various applications and services.
-
IdPs are commonly used in single sign-on (SSO) solutions, enabling
users to access multiple applications with a single set of
credentials
Sep 19, 2023
Part2 - End-to-End data Encryption - Different methods of encryption using public and private keys
- There are primarily three methods of encryption using public and private keys:
- Symmetric encryption (Private-Key Encryption)
- Asymmetric Encryption (Public-Key Encryption)
- Hybrid Encryption
Sep 15, 2023
Demystifying Role based JWT Authentication in Modern Web Applications using spring boot
- JWT-based authentication is a popular method for securing web applications and APIs. JWT stands for "JSON Web Token," and it is a compact and self-contained way to represent information between two parties. In the context of authentication, JWTs are used to verify the identity of a user.
Part1 - End-to-End data Encryption Using Public and Private Keys in java / Spring Boot π±
- In today's digital age, securing sensitive information during data transmission over a network is paramount. Whether it's private messages, financial transactions, or any other form of data exchange, safeguarding data from prying eyes is crucial.
- End-to-end encryption is a powerful technique that ensures data remains confidential during its journey across the network.
- In this guide, we will explore the concept of end-to-end encryption using public and private keys and demonstrate how to implement it in a Spring Boot application.
Sep 13, 2023
π Building and Dockerizing a Spring Boot REST API with Fabric8 Maven Plugin
1. Introduction
- Containerization has become a pivotal aspect of contemporary software engineering, significantly impacting application development, packaging, and deployment.
- In this comprehensive guide, we will delve into a more intricate example by creating a Spring Boot REST API, packaging it into a Docker container through the utilization of the Fabric8 Maven Plugin, and subsequently deploying and accessing this API. π
You may also like
-
INDEX 1. What is JVM? 2. JVM Architecture Overview 2.1 ClassLoader Subsystem 2.1.1 Class Loading Lifecycle 2.1.1.1 L...
-
Large Language Models (LLMs) are transforming how we build software, automate processes, and interact with digital systems. At the center of...
-
The modern web feels instant — pages load fast, APIs respond in milliseconds, videos stream without buffering. But behind this seamless exp...








