made using Leaflet

typeahead and race38

on sept 4, bsky38.com opened voting for "influential" bsky poasters

38 Influential Posters's avatar
1mo

Who are the 38 most influential Bluesky posters of 2026? You get 10 votes, anyone with a Bluesky account can be voted for. The 38 with the most votes make the list. ๐Ÿ—ณ๏ธ Voting ends the 21st night of September. ๐ŸŒŽ ๐ŸŒฌ๏ธ๐Ÿ”ฅ Cast your ballot: bsky38.com

38 Most Influential Bluesky Posters of 2026

38 Most Influential Bluesky Posters of 2026

Vote for the 38 most influential Bluesky posters of 2026.

bsky38.com

its login and its account picker uses typeahead.waow.tech and since everyone has 10 votes to cast, that became a lot of actor searches!

note: my overwhelming reaction to scale: "oh boy!! this is fun!"

per the previous post from waow.tech, we did set out for scale

i think we held up pretty well! search volume went from 163 to 5,423 requests per 15 minutes, while the engine's median stayed around 3โ€“4 ms, even while traffic grew to >half of all time traffic.

ADD ALT

the first 12 hours

some stats on how the typeahead service fared during this time

this animation was created with astra, using leaflet html embeds

we recorded engine searches, alongside public vote counts.

in recent months, our index has grown from 5.9M to 11.63M actors. the search backend still runs on 4 shared CPUs & 2GB RAM on fly.io

what changed since may

search now uses a prepared index plus recent updates, without a full database replica. turso keeps the actor records; my personal laptop builds the index at home, orchestrated by my Prefect server, and R2 delivers it to fly.

the index maps beginnings of names/handles to short lists of matching accounts, computed ahead of time. each search looks up those lists and merges in recent updates.

what broke during increased load

empty search results still triggered a fallback query to Turso. during the race, those queries saturated the database, stalled ingest writes, and caused the backlog to drop events.

i disabled that fallback, then a second one triggered by engine restarts. search no longer falls back to Turso; uncached requests during a restart can briefly return nothing.

the hosting footprint

removing the replica let me shrink the search volume from 100GB to 60GB. the index itself is 14GB; builds now run at home.

but honestly, my may proclamation was too optimistic: storage and cache memory still grow with the index.

lastly

i made race to 38 to follow the votes (uses typeahead.waow.tech)


typeahead's stats ยท API docs ยท source