RestClient

RestClient Official Document

The RestClient is a synchronous HTTP client that offers a modern, fluent API. It offers an abstraction over HTTP libraries that allows for convenient conversion from a Java object to an HTTP request, and the creation of objects from an HTTP response.

Lets see how it is designed.

Read More

Docker-Compose in Spring Boot

Docker Compose simplifies the management of multi-container applications by defining services, networks, and volumes in a single YAML file.

with a single command, we can create and start all the services from yaml file.

let’s see how we use docker compose in Spring Boot. Github Demo / Docker Compose Support in Spring Boot

Read More

BackOff

Backoff is a strategy for dealing with failures, conflicts, or resource competition.

The core logic is: when an operation fails or encounters a limitation, it will pause for a period of time before trying again, and the retry interval is usually adjusted dynamically to avoid increasing system pressure or conflicts.

let’s see how spring-framework implement it.

Read More

Spring Retry

in Spring-Framework 7.0, Spring team redesigned a minimal core retry feature in spring-core. inspired by the Spring Retry project.

currently only with 3 classes & 4 interfaces.

let’s deep into it.

Referneces:

Introduce minimal retry functionality as a core framework feature

Introduce @Retryable AOP support (based on core.retry and Reactor retry functionality)

Read More

Spring-Messaging

when I try to read the spring-integration code, I find it is essential to know spring-messaging first. some concepts are same like message channel, pollable / subscribable channel, asynchronious, integration, etc.

spring-messaging is a sub-module under spring-framework. it highly abstracts the components when two systems needs to communicate via messages.

Read More

Class-Data-Sharing

Class Data Sharing
CDS Spring Framework
CDS Spring boot
Efficient containers with Spring Boot 3, Java 21 and CDS by Sébastien Deleuze @ Spring I/O 2024

Read More