Meetings and Events

Postfix Performance Tuning, Victor Duchovni
2009-02-04 @ 18:45 - Suspenders Bar and Restaurant

"Money can buy you bandwidth, but latency is forever!" - John Mashey, MIPS

Victor will cover an array of issues connected to Postfix performance tuning, including:

  • Latency, concurrency and throughput
  • Postfix input processing
  • Queue file format rationale
  • Input processing bottlenecks
  • Pre-queue filters, milters, content filters
  • Tuning for fast (enough) input
  • Postfix on-disk queues, requirements and architecture
  • What is a "transport"?
  • Postfix "nqmgr" scheduler algorithm
  • Per-destination in memory queues
  • Per-destination scheduler controls
  • SMTP delivery
  • Understanding delay logging
  • Transport process limits, concurrency limits
  • Scaling to thousands of output processes
  • Connection caching, TLS session caching, feedback controls
  • [Event Audio] (Generously recorded and processed by Nikolai Fetissov)

Speaker Biography

Victor Duchovni trained in mathematics, switched tracks to CS in 1980s leaving Princeton with a master's degree in mathematics and newly acquired skills in Unix system administration and system programming. In 1990 moved to Lehman Brothers, worked on system management tooling, and network engineering. Ported "Moira" from MIT to Lehman, built efficient build systems that predated (and partly inspired) Jumpstart. In 1994 joined ESM to market "CMDB" tools to enterprise users, but this did not pan out, in the mean time learned Tcl, and contributed bunch of patches to the 7.x early 8.x TCL releases. In 1997 returned to New York, working in IT Security at Morgan Stanley since late 1999. At Morgan Stanley, developed a hobby in perimeter email security, becoming an active Postfix user and very soon contributor in May of 2001. In addition to many smaller feature improvements, contributed initial implementation of SMTP connection caching, overhauled and currently maintain LDAP and TLS support. Made significant design contributions to queue manager in collaboration with Wietse and Patrik Raq. In 2.6 contributing support for TLS EC ciphers and multi-instance management tooling, ideally also TLS SNI if time permits.