www.javatodev.com Open in urlscan Pro
172.67.168.34  Public Scan

URL: https://www.javatodev.com/building-microservices-with-spring-boot-free-course-with-practical-project/
Submission: On December 16 via manual from US — Scanned from NZ

Form analysis 0 forms found in the DOM

Text Content

JavaToDev
 * Home
 * Start Here
 * Spring Boot
 * Microservices
 * DevOps
 * AWS

Sign in Subscribe
Java


BUILDING MICROSERVICES WITH SPRING BOOT - FREE COURSE WITH PRACTICAL PROJECT

 * 

CHINTHAKA DINADASA

May 6, 2021 • 3 min read

Hello readers, Here I’m starting my new article series on building Microservices
with Spring Boot, and I’m going to write this as a free course on practical
microservices building using Spring Boot.

There are so many examples on the internet if you have checked on google about
how we can build microservices based architecture using spring boot and other
related technologies. But there are really fewer examples of building proper
microservices architecture from scratch to deployments and monitoring.

Hence from here, this article series will include a practical project and how we
can initiate our work, and how we can integrate awesome components to our
microservices architecture.




INTRODUCTION

In this article series I’m going to explain using internet banking API concept
with spring boot based microserices architecture. Initially I’ll develop the
core API which will evolve as a full fledged REST API collection until
deployments.


MICROSERVICES

Here this project consist of mainly 5 microservices and those are,

 * User service (banking-core-user-service) – This service includes all the
   operations under the User such as registrations and retrieval. Additionally,
   this API consumes keycloak REST API to register and manage the user base
   while using the local PostgreSQL database as well.
 * Fund transfer service (banking-core-fund-transfer-service) – This is the
   service that handles all the fund transfers between accounts and this API
   will push messages to a centralized RabbitMQ queue to use from the
   Notification service.
 * Payment service (banking-core-payments-service) – This service will include
   all the API endpoints to process Utility payments in this project and that
   will push notification messages to RabbitMQ as well.
 * Notification service – This API is registered under the service registry but
   consumes all the messages from RabbitMQ and pushes necessary notifications to
   the end users.
 * Banking core service – This is the banking core service that acts as a dummy
   banking core with accounts, users, transaction details, and processors for
   banking transactions.

Microservices Architecture For Internet Banking Concept



OTHER COMPONENTS INSIDE THIS ARCHITECTURE

 * Service Registry – For this, I’m going to use Netflix Eureka Service
   Registry.
 * API Gateway – Gateway will be configured using Spring cloud gateway.
 * Configuration Service – This will be deployed using Spring Cloud Config
   Server and Client.
 * Authentication – Here I’m using Keycloak for authentication and
   authorization, Keycloak is a open-source Identity management system and we
   could easily build user related stuff. Additionally, keycloak comes with a
   handy REST API that allows us to communicate as an API and get things done
   within seconds.
 * Database – For this tutorial will use multiple MySQL database instances.
 * Message Queues – RabbitMQ will be the main message queue supplier in this
   project and I’m having an idea of integrating more tools like RabbitMQ into
   this same project in the future.
 * Logging – ELK stack will be used to manage logs and process custom datasets
   for quick queries inside the architecture.
 * Server API Documentation – API documentation for microservices will be done
   using Swagger with UI.
 * Monitoring – Here we are using Prometheus, Micrometer, and Grafana to monitor
   the whole application setup after deploying into the servers.
 * Distributed tracing – Zipkin will be the tool that we are going to use with
   this project in order to trace whole application requests and details about
   the performance.

From here I’ll explain this whole project with multiple blog articles and will
share sources over GitHub.


ARTICLE SERIES

Pending for the moment, Let’s meet with our first article soon.

 1. Microservices – Service Registration and Discovery With Spring Cloud Netflix
    Eureka
 2. Microservices – Setup API Gateway Using Spring Cloud Gateway
 3. Microservices – Authentication, and Authorization With Keycloak
 4. Microservices – Core Banking Service Implementation
 5. Microservices – User Service Implementation
 6. Microservices – Fund Transfer Service Implementation
 7. Microservices – Utility Payment Service Implementation




CONCLUSION

Thanks for reading our initial article for Building Microservice with Spring
Boot article series.

If you are looking for practical spring boot application development tutorials,
just check our article series and comment on whatever new things you need to see
on our website.

You can get the source code for this tutorial from our GitHub repository.

Buy Us a Coffee ❤️


Featured


HOW TO SETUP HASHICORP VAULT WITH SPRING BOOT APPLICATION

Assume we need to setup secure storage for our application tokens, passwords or
any other secret and sensitive data. HashiCorp vault allows us to setup secure
access to those sensitive data with reduce the risk of breaches and data
exposure with identity-based security automation and encryption-as-a-service. In
this article we
Dec 14, 2022 5 min read 2 comments
Featured


TASK SCHEDULING ON SPRING BOOT USING @SCHEDULER

In this article we are going to discuss how we can build task scheduling
requirements in spring boot using @scheduler annotation. Assume, you have a
requirement to automate repetitive tasks which run on specific time gap, or
specific time in a month, week or year, you can use scheduler job
Dec 3, 2022 4 min read
Featured


HOW TO USE AMAZON SQS WITH SPRING BOOT

Amazon SQS (Simple Queue Service) allows us to configure software components to
send, receive and store messages. Here in this tutorial we will look into a
spring boot solution which configured with Amazon SQS with practical scenarios.
Requirement Personal budget application has a requirement on generating invoices
on expenses when
Nov 29, 2022 5 min read
JavaToDev © 2022
 * Sign up
 * Contact Us
 * DMCA
 * Cookie Privacy Policy
 * Privacy Policy
 * Terms & Conditions
 * About Us
 * Resources

Powered by Ghost




AddThis Sharing
Facebook
, Number of shares
Twitter
, Number of shares
Print
, Number of shares
Email
, Number of shares
AddThis
, Number of shares
AddThis Sharing
FacebookTwitterPrintEmailAddThis