Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/drissiomar98/bankmanagementsystem
Bank Management System with a microservices approach.
https://github.com/drissiomar98/bankmanagementsystem
config-server discovery-server eureka gateway java keycloak oauth2 resilience4j spring-boot springcloud zipkin
Last synced: 2 days ago
JSON representation
Bank Management System with a microservices approach.
- Host: GitHub
- URL: https://github.com/drissiomar98/bankmanagementsystem
- Owner: drissiOmar98
- Created: 2023-12-29T14:30:49.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-02-03T17:10:56.000Z (about 1 year ago)
- Last Synced: 2024-02-03T18:24:08.875Z (about 1 year ago)
- Topics: config-server, discovery-server, eureka, gateway, java, keycloak, oauth2, resilience4j, spring-boot, springcloud, zipkin
- Language: Java
- Homepage:
- Size: 174 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MicroBankingServices 🏦
MicroBankingServices is a cutting-edge project designed to transform banking operations through a microservices architecture. The project encompasses the following microservices:
## 1. Customer Service 🤝
- Manages all aspects related to the bank's clients.
- Enables the creation, retrieval, and modification of customer information.## 2. Account Service 💼
- Manages bank accounts with comprehensive details, including the account identifier, creation date, type (CURRENT_ACCOUNT or SAVING_ACCOUNT), and status (CREATED, ACTIVATED, SUSPENDED, BLOCKED).
- Supports advanced operations such as:
- 💵 Debiting an account with a specified amount
- 💳 Crediting an account with a specified amount
- ↔️ Transferring an amount from one account to another
- Maintains a detailed transaction history for each account operation. Each transaction record includes a unique number, date, amount, description, and type (DEBIT or CREDIT).## 3. Discovery Service (Eureka Server) 🌐
- Implements a Discovery Service using Eureka Server.
- Facilitates dynamic service registration and discovery within the microservices ecosystem.## 4. Gateway Service (Spring Cloud Gateway) 🌉
- Establishes a Gateway Service using Spring Cloud Gateway.
- Manages the routing of requests to the respective microservices based on their specific paths.## 5. Configuration Service ⚙️
- Develops a centralized Configuration Service.
- Enables dynamic configuration management for all microservices, ensuring flexibility and scalability.
## 6. Security (OAuth2 OIDC with Keycloak) 🔒
- Integrates OAuth2 OIDC (OpenID Connect) for authentication and authorization.
- Utilizes Keycloak as the identity provider for secure access control.
- Implements token-based authentication to protect sensitive operations and resources.MicroBankingServices leverages the power of microservices to create a distributed, scalable, and efficient banking system. With Eureka Server for service discovery, Spring Cloud Gateway for efficient routing, and a centralized Configuration Service, the project aims to provide a seamless and dynamic banking experience.