Design a URL Shortening service like TinyURL


🙋 Here are some details you should know about this question:

How do you generate a unique short ID?

How do you avoid collisions?

How do we prevent malicious links, phishing, or spam?

Do we rate-limit requests from abusive clients?

Do we support link expiration or deletion?

How do we store logs for analytics?

Should we cache frequently accessed short URLs? Where? (Redis, CDN)

How do we handle hot keys (very popular links)?


← Back to Main Table