From 37997bce097611348d500a62f5ff4c93a43ae61a Mon Sep 17 00:00:00 2001 From: joanhey Date: Sun, 29 Mar 2026 11:45:42 +0200 Subject: [PATCH 1/4] Testing chunked body --- frameworks/workerman/composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/workerman/composer.json b/frameworks/workerman/composer.json index 9a05e7e6..d0c8ca7e 100644 --- a/frameworks/workerman/composer.json +++ b/frameworks/workerman/composer.json @@ -1,6 +1,6 @@ { "require": { - "workerman/workerman": "^5" + "workerman/workerman": "dev-master" }, "autoload": { "psr-4": { From c85ad2665474b5439e3b482624fec22e27d1bf12 Mon Sep 17 00:00:00 2001 From: joanhey Date: Sun, 29 Mar 2026 11:54:20 +0200 Subject: [PATCH 2/4] Add again the tests comented --- frameworks/workerman/meta.json | 7 ++++--- frameworks/workerman/server.php | 16 ++++++++-------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/frameworks/workerman/meta.json b/frameworks/workerman/meta.json index fcdac4c2..b88df84f 100644 --- a/frameworks/workerman/meta.json +++ b/frameworks/workerman/meta.json @@ -7,12 +7,13 @@ "repo": "https://github.com/walkor/Workerman", "enabled": true, "tests": [ - "pipelined", "baseline", - "noisy", + "pipelined", + "limited-conn", "json", + "upload", "compression", - "limited-conn", + "noisy", "mixed" ] } diff --git a/frameworks/workerman/server.php b/frameworks/workerman/server.php index 420fb8e1..13cfddb1 100644 --- a/frameworks/workerman/server.php +++ b/frameworks/workerman/server.php @@ -57,9 +57,9 @@ function largeJson() $connection->headers = ['Content-Type' => 'application/json']; return $connection->send(json_encode(['items' => $total, 'count' => count($total)])); - // case '/upload': - // $connection->headers = ['Content-Type' => 'text/plain']; - // return $connection->send(strlen($request->rawBody())); + case '/upload': + $connection->headers = ['Content-Type' => 'text/plain']; + return $connection->send(strlen($request->rawBody())); case '/compression': if (str_contains($request->header('Accept-Encoding', ''), 'gzip')) { @@ -83,11 +83,11 @@ function largeJson() ); } - // Serve static files - // if (str_starts_with($request->path(), '/static/')) { - // $response = (new Response())->withFile('/data' . $request->path()); - // return $connection->send($response); - // } + //Serve static files + if (str_starts_with($request->path(), '/static/')) { + $response = (new Response())->withFile('/data' . $request->path()); + return $connection->send($response); + } return $connection->send(new Response( 404, From 3464604bda889201489a28bb329226069f3fe2f0 Mon Sep 17 00:00:00 2001 From: joanhey Date: Sun, 29 Mar 2026 12:48:33 +0200 Subject: [PATCH 3/4] Increase max POST size for the upload test --- frameworks/workerman/server.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/frameworks/workerman/server.php b/frameworks/workerman/server.php index 13cfddb1..92798f99 100644 --- a/frameworks/workerman/server.php +++ b/frameworks/workerman/server.php @@ -2,6 +2,7 @@ use Workerman\Worker; use Workerman\Protocols\Http\Response; +use Workerman\Connection\TcpConnection; require_once __DIR__ . '/vendor/autoload.php'; require_once __DIR__ . '/db.php'; @@ -13,6 +14,9 @@ // 1 process per CPU core $http_worker->count = (int) shell_exec('nproc'); +// Increase max package size to 30MB for file upload test +TcpConnection::defaultMaxPackageSize = 30 * 1024 * 1024; + // benchmark data define('JSON_DATA', json_decode(file_get_contents('/data/dataset.json'), true)); define('LARGE_JSON', largeJson()); From f6d22aa4f27f49d34e8a8ba5b04ed0996388de15 Mon Sep 17 00:00:00 2001 From: joanhey Date: Sun, 29 Mar 2026 12:53:25 +0200 Subject: [PATCH 4/4] Fix max POST size --- frameworks/workerman/server.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/workerman/server.php b/frameworks/workerman/server.php index 92798f99..be6af884 100644 --- a/frameworks/workerman/server.php +++ b/frameworks/workerman/server.php @@ -15,7 +15,7 @@ $http_worker->count = (int) shell_exec('nproc'); // Increase max package size to 30MB for file upload test -TcpConnection::defaultMaxPackageSize = 30 * 1024 * 1024; +TcpConnection::$defaultMaxPackageSize = 30 * 1024 * 1024; // benchmark data define('JSON_DATA', json_decode(file_get_contents('/data/dataset.json'), true));