https://github.com/abdybaevae/url-shortener
Url shortner service
https://github.com/abdybaevae/url-shortener
base62 golang grpc-gateway postgres
Last synced: 6 months ago
JSON representation
Url shortner service
- Host: GitHub
- URL: https://github.com/abdybaevae/url-shortener
- Owner: AbdybaevAE
- License: mit
- Created: 2021-03-26T20:56:29.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-04-14T19:11:46.000Z (about 5 years ago)
- Last Synced: 2024-11-15T08:18:44.684Z (over 1 year ago)
- Topics: base62, golang, grpc-gateway, postgres
- Language: Go
- Homepage:
- Size: 680 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Url shortener service
### Technologies:
- Go
- Grpc
- Postgres
- Redis
### Featres:
- Clean architecture
- Concurrency safe
- Low latency
- Cache
- Default BASE62 algorithm
- Customizable algorithm
- Multiple algorithms support
### Services:
- Link Service
- Key Generation Service
- Algorithm Factory
- Number Service
Link service allow you shorten links
Key generation service pre generate unique keys, depending on algorithm
Algorithm factory register all algorithms
Number service allow you concurently generate increment value in database
### Notes:
In base62 implementation every long url refference on unique integer, that converts to base62 (digits and alphabetical symbols). Key grows up to 62^n( 56 800 235 584 unique keys for 6 chars size)