Stock Exchange Application

Stock Exchange Application

A microservices-based Stock Exchange application developed using Java, Spring Boot, and MySQL, designed to handle real-time stock trading operations, stock listings, and user account management with secure authentication and service discovery.

Java
Spring Boot
MySQL
Eureka Server
Feign Client
API Gateway

About this Project

• Java + Spring Boot: Core backend framework for building RESTful microservices with scalability, maintainability, and strong ecosystem support.

• Microservices Architecture: Split into two main services:

Stock Exchange Service → Handles trading operations, stock listings, and user portfolio management.

Stock Price Service → Manages real-time stock pricing and updates.

• RESTful API Design: Developed APIs for trading operations, portfolio management, and stock listings with proper validation, error handling, and logging.

• JWT-Based Authentication: Secured all user interactions using JWT, ensuring safe sessions and role-based access control.

• Service Discovery (Eureka Server): Integrated a Eureka server to enable dynamic discovery of microservices for high availability.

• Inter-Service Communication (Feign Client): Leveraged Feign clients for seamless and type-safe communication between microservices, reducing boilerplate code.

• API Gateway: Configured a centralized API Gateway to route requests to the appropriate microservices, enabling security, monitoring, and request aggregation.

• Database (MySQL): Persisted user accounts, trade histories, and stock data in a relational database for reliable storage and transactional integrity.