URL Shortener : Microservice Maven
A URL shortening service with objective to:
- To provide a alias for long URLs
- Record the visits on the URL for info about its use
Typical Architecture
Simplified Redis Stack Architecture
Overview video (Optional)
Here's a short video that explains the project and how it uses Redis:
How it works
How the data is stored:
For every URL info, there are 3 things store
- JSON containing all info
- Key Value pair
[short url]->[long url]
- Redis Timeseries in name format
links:{short_url}
How the data is accessed:
- When you hit the Go Service, it fetches the Long URL using the short one from key value store and sends a message to redsub with current timestamp, and redirect the user to Long URL
- Java subscribes to the channel :
pubsub:dev117uday
and when it receives the message, it stores into the Redis Timeseries - When user can save new URL…