aistiak / scaleable-url-shortner

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Scaleable URL Shortner

A url shortener with dynamic number backend instances with optimized strategies for lower latency with the help of distributed config manager (apache zookeeper) and in memory cache (redis)

how to run

with docker-compose

just run docker-compose up

work process

  • when a new node connects to zk , it will fetch all the emphral nodes
  • emphaeal node will contain the currently being used range
  • available range will be detemined by cross matching empheral nodes and root node data
  • a server will store its count in redis

snaps

image

image

todos

  • add analytics for url (access history , count , location , device etc )
  • customized shortened url
  • delete / disable url

About


Languages

Language:TypeScript 56.1%Language:JavaScript 27.7%Language:CSS 14.1%Language:Shell 1.1%Language:Dockerfile 1.0%