From 0c776e0a4496c6ac55163e830b9089cee5bb9593 Mon Sep 17 00:00:00 2001 From: shimon Date: Mon, 16 Oct 2023 11:04:44 +0300 Subject: [PATCH] comparing $workersCount via worker.php vs init php --- .env | 2 -- app/worker.php | 11 +++++++++-- docker-compose.yml | 4 ++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.env b/.env index 89f5980a4..feeb74d84 100644 --- a/.env +++ b/.env @@ -1,8 +1,6 @@ _APP_ENV=development _APP_LOCALE=en _APP_WORKER_PER_CORE=6 -_APP_WORKERS_NUM=1 -_APP_QUEUE_NAME=database_db_main _APP_CONSOLE_WHITELIST_ROOT=disabled _APP_CONSOLE_WHITELIST_EMAILS= _APP_CONSOLE_WHITELIST_IPS= diff --git a/app/worker.php b/app/worker.php index 6995c2664..1fb1c14b2 100644 --- a/app/worker.php +++ b/app/worker.php @@ -221,10 +221,17 @@ if (!isset($args[1])) { $workerName = $args[0]; $workerIndex = $args[1] ?? ''; -if (!empty($workerNum)) { +if (!empty($workerIndex)) { $workerName .= '_' . $workerIndex; } +$multiprocessing = App::getEnv('_APP_SERVER_MULTIPROCESS', 'disabled') === 'enabled'; +if ($multiprocessing) { + $workerCount = swoole_cpu_num() * intval(App::getEnv('_APP_WORKER_PER_CORE', 6)); +} else { + $workerCount = 1; +} + try { /** * Any worker can be configured with the following env vars: @@ -233,7 +240,7 @@ try { * - _APP_QUEUE_NAME The name of the queue to read for database events */ $platform->init(Service::TYPE_WORKER, [ - 'workersNum' => App::getEnv('_APP_WORKERS_NUM', swoole_cpu_num() * intval(App::getEnv('_APP_WORKER_PER_CORE', 6))), + 'workerCount' => $workerCount, 'connection' => $pools->get('queue')->pop()->getResource(), 'workerName' => strtolower($workerName) ?? null, 'queueName' => App::getEnv('_APP_QUEUE_NAME', 'v1-' . strtolower($workerName)) diff --git a/docker-compose.yml b/docker-compose.yml index f29b90d36..2d3541d80 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -389,8 +389,8 @@ services: - _APP_DB_PASS - _APP_LOGGING_PROVIDER - _APP_LOGGING_CONFIG - - _APP_WORKERS_NUM - - _APP_QUEUE_NAME + - _APP_SERVER_MULTIPROCESS=disabled + - _APP_QUEUE_NAME=database_db_main appwrite-worker-builds: entrypoint: worker-builds