Project

Transaction Aggregator

Hard
95 completions
~ 40 hours
4.3

You will learn how to communicate with a REST API from a Spring Boot application, practice handling API errors, implement the retry pattern, learn about multi-threading, apply the asynchronous approach and get acquainted with caching in Spring Boot.

Provided by

JetBrains Academy JetBrains Academy

About

Backend services often depends on other services to receive necessary data. In this project, you will design and implement a Transaction Aggregator system that demonstrates the fundamentals of inter-service communication using REST APIs. The project will also introduce you to the complexities of dealing with remote server errors, teaching you to build robust systems that can handle unexpected issues gracefully. You will learn how to implement retries to ensure system resilience and continuity of service even when remote servers are temporarily unavailable. Additionally, you'll gain experience in applying caching to optimize system performance and efficiency.

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Establish an HTTP connection with a server.
Send requests to different servers to fetch, process and return transactions data.
Handle error responses from the servers and apply the retry patters to fetch data.
Deal with long response times and apply asynchronous requests and data caching.

Reviews

Dmytro Melnyk avatar
Dmytro Melnyk
1 month ago
This project was a great introduction to Spring Boot, asynchronous programming, and caching. It was challenging, but I learned a lot about building REST services and organizing application architecture.
Artur Ishtuganov avatar
Artur Ishtuganov
3 months ago
I've learned how to cache received data and make requests asynchronously
Valeri avatar
Valeri
4 months ago
Everything was fine, but in my opinion, the topics were shown to me in a strange order. That is, first some special ones, and only then more general ones. I won't say exactly at what stage it was.

4.3

Learners who completed this project within the Java Backend Developer (Spring Boot) course rated it as follows:
Usefulness
4.6
Fun
4.1
Clarity
4.3