← Back
Home › Systems › Sales, marketing and customer service

newsletter

newsletter and mailing-list system

Substack, Mailchimp

SystemTechniques · 8Primitives · 36 newsletter Template enginescompilers · medium: Compile templates with loops, partials and auto-escaping into render functionsDurable job queuedistributed · medium: Persisted tasks that workers lease for a visibility timeout, ack on success and retry with backoff; at-least-once execution that survives worker and queue crashes.›Windowed stream aggregationdistributed · medium: Group events by event-time window per key, keep one partial aggregate per slice, and emit a window when the watermark passes its end.›Bounce processingnetworking · medium: Parse DSNs and feedback loops, classify hard/soft bounces, maintain suppression listsReputation scoringsecurity · medium: Turn per-entity good/bad event counts into a trust score that forgets old evidence, borrows strength from parent groups for new keys, and maps to allow, challenge or block.›Watermarksdistributed · medium: Event-time progress markers that bound lateness and trigger window resultsLinear-time regular expression matc…search-sort · medium: Match a regular expression in O(pattern x text) worst case by tracking all live parse positions at once, then cache the state sets as a lazily built DFA for speed.›Html sanitizationsecurity · low: Allowlist-based HTML sanitizing of untrusted markupIdempotency keysfinance · low: Client-chosen unique key per logical operation, stored with a request fingerprint and the final response, so retries replay the first result instead of acting twice.›Smtp protocolnetworking · low: SMTP/ESMTP sessions, pipelining, STARTTLS and reply codesMime parsingstorage · low: RFC 5322/2045 headers, multipart bodies and transfer encodingsRoaring bitmapscompression · low: Compressed set of 32-bit integers in 64K-value chunks, each a sorted array, bitmap or run list; fast intersections, the standard for bitmap indexes.›HyperLogLogdata-structures · low: Counts distinct elements in kilobytes with about 1 % error by tracking the longest run of leading zero bits in hashed values per bucket.›SPF, DKIM and DMARC sender authenti…networking · low: SPF authorizes sending IPs, DKIM signs the message, DMARC requires either to match the visible From domain and says what to do on failure.›Open and click trackingnetworking · low: Tracking pixels and signed redirect links for engagement eventsSigned URLssecurity · low: A URL carrying its expiry and a MAC or signature over method, path and query, so a verifier holding the key needs no lookup.›Token bucketsystems · low: A bucket of up to b tokens refilled at rate r; requests spend tokens, enforcing an average rate while allowing bursts of b.›Name resolutioncompilers · low: Bind every use of a name to its declaration with a scope stack, handling shadowing, hoisting and closure capture in one AST walk.›Recursive-descent parsingcompilers · low: Hand-written top-down parser with one function per grammar rule; simple, fast, with full control over error messages and recovery.›Dead-letter queuedistributed · low: A side queue for messages that keep failing: after N delivery attempts or a permanent error, park them with the reason so the main queue keeps moving.›Leasesdistributed · low: A lock that expires on its own: bounded-time ownership that survives crashes and partitions, given bounded clock drift and fencing tokens on writes.›Write-ahead logstorage · low: Append each change to a checksummed sequential log and fsync it before touching data pages; the basis of crash durability in nearly every database.›Exponential backoff with jittersystems · low: Retry after delays that grow geometrically and are randomized, so failed clients spread out instead of hammering a recovering service in synchronized waves.›+ 1 more techniques+ 20 more primitives

Similar systems

Share the most building blocks with this one.