Conversation
…ncorrect short code req
… for events: user_deleted, click
…koff - Added 3 tiered delay queues (3s, 9s, 27s) for user deletion retries via TTL and DLX. - Added permanent dead letter queue (DLQ) for failed events exceeding 3 retries. - Added dynamic local async sleep backoff for high-throughput click batches.
…ions Details: - Add moka crate to url-service for L1 micro-caching - Wrap Redis and Postgres lookups in singleflight get_with to prevent Cache Stampedes / Thundering Herd under high concurrent load - Increase NGINX worker_connections and worker_rlimit_nofile to support up to 200,000 global concurrent connections
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Feature Release: Distributed Systems Architecture & URL Expiry
This merge introduces a massive architectural overhaul of the Bittuly platform, migrating the core systems to a high-performance, event-driven, distributed microservices architecture capable of handling viral scale.
🚀 Key Architectural Upgrades
1. Messaging, Resilience & Event-Driven Metrics (RabbitMQ)
click_events_queue), resulting in sub-millisecond redirection times.consumer-serviceto ingest background tasks.3s -> 9s -> 27s) for failing jobs.2. High-Concurrency & Cache Stampede Protection
mokain the Rust backend. This guarantees that if a viral link generates a 200,000 req/sec spike, identical concurrent requests are coalesced in memory—ensuring the database receives exactly 1 query, completely eliminating Cache Stampedes / Thundering Herd failures.worker_rlimit_nofile), while maintaining strict IP-based rate limiting (20r/sper user) to protect against DDoS attacks.3. URL Expiration Lifecycle (Phase 3)
TIMESTAMPTZ) natively into PostgreSQL.🎨 Frontend & UX Enhancements
410 Goneand404 Not Founderrors, proxying them to the React Router to render the<Unavailable />page beautifully without altering the user's URL bar.