Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

eslamhawas/Online-Library-SpringBoot

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Online Library System - Microservices Architecture

Microservices Spring Boot MySQL Java

Overview

This project is a revamped version of an online library system, designed and implemented using a microservices architecture. The system leverages Spring Boot for service development and MySQL as the underlying database for persistence. By decomposing the application into independent services, this approach enhances modularity, scalability, maintainability, and deployment flexibility.

Features

  • Microservices Architecture: Decomposed the application into loosely coupled, independently deployable services.
  • RESTful APIs: Facilitated inter-service communication through RESTful APIs.
  • Spring Boot: Employed for rapid development, efficient resource management, and streamlined service deployment.
  • MySQL: Used as the relational database management system for persistence.

Microservices

The project consists of the following microservices:

  1. User Service: Manages user registration, authentication, and profile management.
  2. Book Service: Handles book catalog management, including CRUD operations.
  3. Borrowing Service: Manages book borrowing transactions and history.

Prerequisites

  • Java 21
  • Maven 3.x
  • MySQL 8.x
  • Docker
  • NodeJs

1. Clone the repository

git clone https://github.com/eslamhawas/online-library-system.git
cd online-library-system

2. Run the project

npm -i
docker-compose up -d

Future Improvements

  • Implement service discovery and load balancing using Spring Cloud and Netflix Eureka.
  • Integrate API Gateway for centralized API management.
  • Add OAuth2 for secure authentication and authorization.
  • Implement CI/CD pipeline using Jenkins or GitHub Actions.

About

Online Library app Built using Spring boot + React + Docker + MySQL

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.