https://github.com/mohammedsohail-dev/contentdeliverynetwork-demo
Content Delivery Network using Maven
https://github.com/mohammedsohail-dev/contentdeliverynetwork-demo
http2 java maven rest-api spring-boot tomcat
Last synced: about 2 months ago
JSON representation
Content Delivery Network using Maven
- Host: GitHub
- URL: https://github.com/mohammedsohail-dev/contentdeliverynetwork-demo
- Owner: mohammedsohail-dev
- Created: 2023-12-19T23:54:02.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-27T06:48:40.000Z (about 1 year ago)
- Last Synced: 2025-10-25T11:53:28.099Z (8 months ago)
- Topics: http2, java, maven, rest-api, spring-boot, tomcat
- Language: Java
- Homepage:
- Size: 856 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CDN Origin Server System





# Objective
Deployment of a Content Delivery Network (CDN) using Spring Boot for REST API infrastructure, employing HTTP/2 protocol with enhanced security features. The project showcases a novel CDN architecture with randomized surrogate server selection and a user-friendly interface for demonstration.A Spring Boot-based Content Delivery Network (CDN) system with origin server and multiple edge servers.
## Key Features
- **CDN Architecture** with 1 origin server and 4 edge servers
- **Spring Boot 3.1.5** backend with Java 17
- **MongoDB** integration for data persistence
- **Load balancing** between edge servers
- **OkHttp** for efficient HTTP communication
- **Spring Session** for session management
- **Lombok** for reduced boilerplate code
## System Architecture
```plaintext
Client (test2.html)
|
Origin Server (Redirecter)
├── Edge Server 1
├── Edge Server 2
├── Edge Server 3
├── Edge Server 4
└── Edge Server 5
```
## How to run
To run this project one must add all the maven projects, build them and run each and open the html file in repository to view the result
```
mvn spring-boot: run
```
on all servers