Loading...
Estimate the scale of the system. Consider daily active users, read/write ratio, storage requirements, bandwidth, and any relevant QPS calculations...
POST /v1/convert/{url}
GET /v1/{url}
POST {
url
timestamp
}
Database can be a TTL based NoSQL database
Justification:
1 - Main Application that handles the client API requests
2 - A seperate hashing service that converts any given URL into a unique hash, prefixed by a static string like (tinyurl.
3 - A Cache layer with a TTL based eviction for faster Reads as this is a read-heavy application
4 - A database with a 15 day TTL based eviction for any URL that was created using our service.
4 -