#691·workerman

Low performance if using Nginx as a reverse proxy

Author: vandergrafgeneratorCreated Dec 8, 2021Updated Jan 11, 2026

Workerman http i get 48k requests per second.

Nginx as a reverse proxy for Workerman i only get 31k requests per second.

Am i doing anything wrong?


***nginx.conf***

user root;
error_log stderr error;
worker_processes auto;

events {
  use epoll;
  worker_connections 16384;
  multi_accept on;
}

http {
  access_log       off;
  sendfile         on;
  tcp_nopush       on;
  tcp_nodelay      on;
  etag off;
  keepalive_requests 10000000;
  upstream app {
    server unix:/dev/shm/app.sock max_fails=0;
  }
  server {
    listen 0.0.0.0:8080 default_server;
    location / {
      proxy_pass http://app;
      proxy_ignore_client_abort on;
    }
  }
}

***app.php***

<?php

use Workerman\Worker;

require_once __DIR__ . '/vendor/autoload.php';

$unix = '/dev/shm/app.sock';
$http_worker = new Worker("unix://$unix");
$http_worker->protocol = "Workerman\\Protocols\\Http"; 


# comment  $http_worker = new Worker("http://0.0.0.0:8081"); 


$http_worker->count = 6;

$http_worker->onMessage = function ($connection, $request) {
 
    $connection->send("Hello World");
};

Worker::runAll();