We can't find the internet
Attempting to reconnect
## Simple CDN Design
I wanna create a simple cdn server to serve my static files.
Design the cdn server.
### Goals
- Upload files
- Service static
- Cheep to use
### Architecture
```mermaid
flowchart TD
A[Jonathan]
B[Frontend Cache Server]
C[Reverse Proxy]
D[Upload Server]
Z[Storage Backend]
A-->C
C-->B
B-->Z
A-->C
C-->D
D-->Z
```
### Choose Solutions
#### 1. Reverse Proxy
Now using Caddy server.
Caddy can automate create https and setup proxy very easy.
TODO: Save Caddy certificates to s3.
#### 2. Frontend Cache Server
In my knowledgement base, varnish is the best software.
#### 3. Upload Server
I have to write it myself. So it easily fit my servers.
#### 4. Storage Backend
The AWS Simple Storage Service (s3) is the cheapest way as I known.