Mikhail Panfilov

Mikhail Panfilov

Backend developer, Saint Petersburg, Russia

Backend developer from Saint Petersburg, working at Aisory. Author of mbrotli, mzstd and the ngx_mbrotli and ngx_mzstd NGINX modules: Brotli and Zstandard rewritten in safe Rust.

Maintainer of the M-Compressors codecs and NGINX modules and author of this blog. Publishing open source on GitHub since 2014.

Links

Posts

Projects

  • mbrotli: Google Brotli in safe Rust: encoder ported from the C reference with the same output at qualities 0–11, a native decoder, Read/Write adapters and parallel compression on your own threads.
  • mzstd: Zstandard (RFC 8878) in safe Rust: single-threaded output byte-identical to zstd 1.5.7, a decoder written from the specification, no_std and a C ABI.
  • ngx_mbrotli: Drop-in replacement for google/ngx_brotli that can compress on NGINX thread pools, so large responses no longer block the worker's event loop.
  • ngx_mzstd: Drop-in replacement for tokers/zstd-nginx-module with encoder reuse and thread-pool compression.
  • borrowed-buf: A small no_std port of the nightly-only core::io::BorrowedBuf and BorrowedCursor for stable Rust 1.89.