NATS Messaging vs REST Performance Comparison

Overview: In this tutorial, I would like to show you the performance of the NATS messaging vs REST based microservices. NATS is a high performance cloud native messaging server which we had already discussed here. NATS can help with service discovery, load balancing, inter-microservices communication etc in the modern distributed systems architecture. Sample Application: Our main […]

gRPC vs REST Performance Comparison

Overview: In this tutorial, Lets develop both gRPC and REST based microservices and do the gRPC vs REST  Performance Comparison. If you are new to gRPC, please take a look at these articles first. gRPC – An Introduction Guide gRPC Unary API In Java – Easy Steps gRPC Spring Boot Integration TL;DR Check this youtube

gRPC vs REST Performance ComparisonRead More »

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

NATS – Server ClusteringRead More »

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 »

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 »

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 »

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 »

Priority Queue Pattern With Spring Boot

Overview: Let’s consider a distributed application in which requests are processed as and when they arrive. Let’s also consider that these requests are time-consuming tasks triggered by user actions on our application. As tasks will take time to process, it is better to get these requests queued, we could process them sequentially and notify the

Priority Queue Pattern With Spring BootRead More »