Optimizing PHP Performance: Why PHP-FPM Outperformed FrankenPHP and Caddy for 1K Real-Time Users

Published ·

When it comes to building scalable web applications, backend performance plays a critical role in user experience. I recently ran a series of benchmarks to determine the best PHP runtime environment for handling 1,000 concurrent users in real-time.

Ready to run your business in one place?

WebifyGO brings your contacts, pipeline, invoicing, campaigns, and support into one CRM. Start free — no credit card required.

Start Your Free Trial →

We tested three different setups:

  • FrankenPHP – a modern, experimental PHP runtime built on top of Caddy.
  • Caddy + PHP-FPM – combining the performance of Caddy as a web server with PHP-FPM.
  • Apache + PHP-FPM – the more traditional stack using PHP-FPM with Apache.


Test Setup

  • Server Specs: 16 CPU cores, 40GB RAM.
  • Database: MySQL 8 with optimized innodb_buffer_pool_size and caching parameters.
  • Load Testing Tool: ApacheBench (ab) and wrk for simulating 1k concurrent users.
  • Codebase: A real-world PHP project with sessions and database queries.


FrankenPHP Results

FrankenPHP is lightweight and very fast in single-core tests. However, under high concurrency (1k users), CPU usage spiked up to 1500%, which made resource usage unpredictable. While it handled requests quickly, the stability wasn’t consistent in production-like conditions.

Pros:

  • Easy to run via Caddy.
  • Built-in support for modern features.

Cons:

  • High CPU overhead under heavy concurrency.
  • Experimental – not yet production-proven for enterprise workloads.


Caddy + PHP-FPM Results

Caddy provided simplicity in configuration, automatic HTTPS, and good load distribution. Combined with PHP-FPM, it was stable – but still slightly less efficient compared to Apache with PHP-FPM in our tests.

Pros:

  • Modern and easy configuration.
  • Good TLS handling out of the box.

Cons:

  • Higher latency compared to PHP-FPM on Apache.
  • PHP worker handling not as efficient.


Apache + PHP-FPM Results

PHP-FPM with Apache showed the best balance of CPU usage, memory consumption, and request throughput. Under 1k concurrent users, CPU usage capped around 500%, which is significantly lower than FrankenPHP’s 1500%.

Pros:

  • Stable and predictable under heavy load.
  • Mature ecosystem, widely documented.
  • Tunable via pm.max_children, opcache, and Redis sessions.

Cons:

  • Slightly higher memory footprint than Caddy.


Final Verdict: PHP-FPM Wins

After extensive testing, PHP-FPM proved to be the most reliable and performant solution for handling 1,000 real-time users. While FrankenPHP and Caddy are exciting technologies with modern benefits, PHP-FPM remains the production-grade choice for high-concurrency environments.

If you’re aiming for real-time scalability with thousands of users, optimizing PHP-FPM + database tuning + Redis session handling is still the safest and most efficient path forward.


I recommend starting with PHP-FPM for mission-critical applications, while keeping an eye on FrankenPHP and Caddy as they evolve.

Frequently Asked Questions

WebifyGO builds custom digital platforms for businesses, combining a professional website, booking system, ecommerce store, CRM, invoicing, email and SMS marketing, and more, all managed from a single dashboard. Every deployment is custom-built for your industry, not a generic template.

A CRM (customer relationship management) system keeps every contact, deal, and interaction in one place, so your team can sell, support, and follow up without losing track of anything.

WebifyGO is priced as a project, not a monthly subscription. You pay a one-off build fee based on the modules and features you need, plus an optional maintenance plan. There are no per-seat fees and no recurring SaaS charges. Get in touch for a clear proposal.

Yes. WebifyGO is built to start simple and scale — solo founders can begin free, and the platform grows with your team without ever needing to migrate.

WebifyGO is built for small and medium businesses that want a professional online presence, booking system, or ecommerce store, without stitching together multiple tools. It works across industries, from restaurants, salons, and clinics to law firms, agencies, and ecommerce brands.

Absolutely. Unlike spreadsheets, a CRM tracks full history, automates follow-ups, and keeps everyone working from the same live data.

Yes. Every WebifyGO deployment runs in its own isolated instance on your own domain, with SSL encryption and automatic backups. Your data is never shared with other customers or other WebifyGO deployments.

They remove repetitive work — logging activity, sending follow-ups, and even making calls — so your team spends more time with customers and less on admin.

Yes. The platform is fully modular. You can start with a website and add a booking system, ecommerce store, CRM, or campaigns later, without rebuilding anything. Your existing pages and data stay exactly as they are.