NATS – Server Clustering

Overview: In the previous article on NATS, we had discussed the basics of NATS set up and its features. pub/sub request/reply queue groups service discovery (channel) load balancing NATS is a very lightweight, high performance messaging server – It makes it as a good choice for modern microservices architecture to solve the service discovery and […]

RSocket + WebSocket + Spring Boot = Real Time Application

Overview: In this tutorial, I would like to show you how to create a real time application using RSocket WebSocket & Spring Boot.  If you are new to RSocket, take a loot these articles first. RSocket With Java – Getting Started RSocket With Spring Boot RSocket – Uploading Files With Reactive Programming Sample Application: Our

RSocket + WebSocket + Spring Boot = Real Time ApplicationRead More »

Spring WebFlux Security

Overview: In this tutorial, I would like to demo Spring WebFlux Security – security for reactive web applications. Sample Application: Lets consider a simple application which has 3 API endpoints. We need to have the security as shown below. Path Allowed Roles /home/admin ADMIN /home/user ADMIN, USER /home/any N/A Project Setup: Create a Spring Boot

Spring WebFlux SecurityRead More »

NATS Messaging In Java

Overview: In this tutorial, I would like to introduce NATS Messaging to you & talk about its advantages in Microservices Architecture and some code samples in Java. NATS Messaging Server: We had discussed a lot about inter microservices communication using Kafka, gRPC, RSocket, even Redis in this blog. They are all great and they have

NATS Messaging In JavaRead More »

reactor hot publisher

Reactor Parallel Flux Example

Overview: In this short tutorial, I would like to demo Reactor Parallel Flux to process all the items in a reactive pipeline in parallel using Schedulers/Thread pools. If you are new to this, take a look at the entire set of articles here in the given order. Reactor Sequential Flux: Reactive programming is a style

Reactor Parallel Flux ExampleRead More »

RSocket File Upload Example

Overview: In this tutorial, I would like to show you RSocket File Upload – how we could upload large files in a complete reactive programming style with back-pressure support. RSocket is a message passing protocol for multiplexed, duplex communication which supports TCP, WebSockets and Aeron (UDP).  If you are new to RSocket, take a look at these articles to

RSocket File Upload ExampleRead More »

RSocket With Java – Getting Started

Overview: In this tutorial, I would like to introduce you to RSocket with Java, its interaction models and how it will be helpful for Microservices communication or client – server application development. RSocket: RSocket is a binary & message passing protocol over a single connection between client and server. It supports TCP, WebSockets and Aeron

RSocket With Java – Getting StartedRead More »

reactor hot publisher

Reactor Buffer vs Window

Overview: In this tutorial, I would like to demo Reactor Buffer vs Window options for collecting the items in a reactive pipeline & doing operations in batches. If you are new to reactive programming or project reactor, take a look at this entire series to get a good idea on that. Reactor Buffer vs Window:

Reactor Buffer vs WindowRead More »

gRPC File Upload With Client Streaming

Overview: In this gRPC File Upload tutorial, I would like to show you how we could make use of gRPC client streaming feature to implement file upload functionality for your application. If you are new to gRPC, I request you to take a look at these articles first. Protocol Buffers – A Simple Introduction gRPC

gRPC File Upload With Client StreamingRead More »

Microservice Pattern – Competing Consumers Pattern Implementation With Kubernetes

Overview: In the distributed systems, we enable loose coupling between systems by passing messages via a service bus / message queue. We had implemented that in one of the architectural pattern series here. Sometimes, when the message throughout is extremely high – that is number of the incoming messages per unit time is greater than

Microservice Pattern – Competing Consumers Pattern Implementation With KubernetesRead More »