Scotty, I need warp speed in three minutes

This title could be clearer and more informative.Try out Clickbait Shieldfor free (5 uses left this month).

A deep dive into performance optimizations made to Ultravisor, a Postgres connection pooler written in Elixir. The author shares several concrete lessons learned: using flame graphs and tprof for profiling, debouncing expensive inet stats calls, replacing telemetry_prometheus_core with Peep for 2x TPS improvement, using Erlang Records instead of Maps/Structs for O(1) field access, leveraging persistent_term over ETS for rarely-changing data, and implementing a Rust NIF-backed VecDeque to bypass GenServer call overhead for connection checkout — yielding a ~12% TPS boost. Each optimization includes before/after TPS benchmarks and practical takeaways.

13m read timeFrom hauleth.dev
Post cover image
Table of contents
Lesson: Flame graphs and call tracing is essential #Lesson: Doing less can improve performance #Lesson: Telemetry is not free #Lesson: Records instead of maps or structs #Lesson: ETS tables are super fast, but not always #Lesson: Calling your GenServer s is fast, but not 90k times per second fast #Conclusions #Post Scriptum: Good tooling helps a lot #

Sort: