~/talk

strfry: An Efficient Server for the Nostr Protocol

Talkat CppNorth 2023 · 2023-07-17..07-19· [serverless, networking]
links:none on file
slides:none on file

strfry is a C++ Nostr relay now used by most high-traffic relays and built around LMDB, flatbuffers, zstd dictionaries and a single-writer, multi-threaded pipeline. It imports millions of events, stores JSON payloads memory-mapped for zero-copy sends, and uses negentropy, a range-xor set-reconciliation that syncs million-item DBs in about 2–3 round trips using ~900/600 bytes. Features include SO_REUSEPORT zero-downtime restarts, per-filter scheduling to mitigate expensive queries, pluginable spam policies, and geo-replication via streaming and sync.

AI-written summary · about

  1. 0:00Introduction to Nostr
  2. 6:21Database choice for relays
  3. 13:16FlatBuffers and LMDB design
  4. 20:22StirFry architecture overview
  5. 27:00Reuse port and zero downtime
  6. 29:28Negentropy for syncing relays
  7. 39:21Write policies and spam filtering
  8. 43:58Compression with Zstandard
  9. 46:23Templar HTML templating
  10. 50:34Nostr's community-driven future
  11. 51:17Q&A and closing
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.