Skip to content

Benchmarking the new fiber UI#

This documentation applies to Piler enterprise edition 2.0.0

Revision #1

Publication date: 2025-SEP-26

Piler enterprise has a new web app backend. While the 1.x series relies on nginx+PHP, the 2.x series has been rewritten using Go Fiber. While the look of the UI is the same, the backend offers a much better performance.

Benchmark comparison#

The below numbers apply to a virtual machine (VM) having 2 vCPUs and 2 GB memory. Both the fiber and the nginx+php combo have been hit by the k6 performance testing tool using 50 virtual users (VU) for 30s.

The search test used an array of 5 search expressions. The view test used an array of 5 messages ranging from 6 kB to 300 kB. Also the search test included a 0.001s delay between requests.

The results#

Type fiber nginx+php
Search 28-29k 9.2k
View 18k 1.7k

The results indicate that the fiber UI outperforms the legacy UI by a factor of 3 when searching, and by a factor of 10 when retrieving emails from the storage.

Why nginx/php-fpm tops out earlier#

Context switching: PHP-FPM spawns pools of workers, each a separate process. Even with tuning, there’s higher scheduling overhead compared to Fiber goroutines.

IPC overhead: Every request goes through nginx → fastcgi interface → PHP-FPM socket. Fiber skips this layer.

Memory pressure: With 2 GB RAM, each PHP-FPM worker might use 20–50 MB under load. 50 workers could eat most of your RAM, so pm.max_children can’t be raised too high.

PHP runtime cost: Each request must bootstrap PHP, autoload, parse code paths, etc. Fiber just dispatches Go handlers in memory.

The throughput ceiling is in the PHP code execution itself (runtime overhead + DB roundtrips).

That’s why Fiber is already giving you a 3× boost with the same DB backend and hardware.