The Insurance Lifecycle Management System is a microservices-based application developed using Spring Boot and Spring Cloud. It simulates the complete insurance workflow, including quote generation, policy management, underwriting, claims processing, and payment handling.
The project demonstrates modern distributed system architecture using service discovery, centralized configuration, API gateway routing, secure authentication, and event-driven communication.
The system follows a Microservices Architecture where each business capability is implemented as an independent service.
- Config Server
- Eureka Discovery Server
- API Gateway
- Policy Service
- Quotes Service
- Underwriting Service
- Claims Service
- Payment Service
- Java 17
- Spring Boot
- Spring Cloud
- Spring Security
- JWT Authentication
- REST APIs
- Apache Kafka
- MongoDB
- Eureka Service Discovery
- Spring Cloud Config Server
- Spring Cloud Gateway
- Maven
Provides centralized configuration management for all microservices.
Handles service registration and discovery between microservices.
Acts as the single entry point for all client requests and routes traffic to the appropriate services.
Generates insurance quotes based on customer requirements and policy details .
Evaluates insurance applications and determines risk eligibility.
Manages policy creation, updates, retrieval, and lifecycle operations.
Processes customer insurance claims and tracks claim status.
Handles premium payments and payment-related operations.
- Microservices-based architecture
- Service Discovery with Eureka
- Centralized Configuration Management
- API Gateway Routing
- JWT Authentication and Authorization
- MongoDB Integration
- Kafka Event-Driven Communication
- RESTful APIs
- Scalable and Modular Design
- Independent Service Deployment
- Customer requests an insurance quote.
- Quotes Service generates a quote.
- Underwriting Service evaluates risk.
- Policy Service creates and manages policies.
- Payment Service processes premium payments.
- Claims Service handles claim submissions and processing.
- API Gateway routes all incoming requests.
- Eureka manages service registration and discovery.
| Service | Port |
|---|---|
| Config Server | 8888 |
| Eureka Server | 8761 |
| API Gateway | 8080 |
| Policy Service | 8081 |
| Quotes Service | 8082 |
| Claims Service | 8083 |
| Payment Service | 8084 |
| Underwriting Service | 8081/Configured Port |
Insurance-Lifecycle-Microservices-Project
│
├── api-gateway
├── claims-service
├── config-server
├── eureka-server
├── payment-service
├── policy-service
├── quotes-service
├── underwriting-service
│
├── README.md
└── .gitignore
- Java 17+
- Maven
- MongoDB
- Apache Kafka
- Git
git clone https://github.com/devdand5/Insurance-Lifecycle-Microservices-Project.git
cd Insurance-Lifecycle-Microservices-ProjectUpdate the MongoDB configuration in the application properties:
spring.data.mongodb.uri=<YOUR_MONGODB_URI>
spring.data.mongodb.database=<YOUR_DATABASE_NAME>Start the services in the following order:
- Config Server
- Eureka Server
- API Gateway
- Remaining Microservices
The application uses JWT (JSON Web Token) authentication for securing API endpoints and controlling access to protected resources.
- Redis Caching
- Docker Containerization
- Kubernetes Deployment
- CI/CD Integration
- Distributed Tracing
- Monitoring with Prometheus and Grafana
- Circuit Breaker using Resilience4j
- API Documentation using Swagger/OpenAPI
This project helped in understanding:
- Microservices Architecture
- Spring Cloud Ecosystem
- Service Discovery
- API Gateway Pattern
- JWT Security
- Event-Driven Communication using Kafka
- Centralized Configuration Management
- Distributed System Design
- REST API Development
Dev Dand
Spring Boot Developer | Java Developer | Microservices Enthusiast
This project is created for educational and learning purposes.