Swoole怎么设置worker进程的自定义名称

24次阅读

swoole中可通过 worker_name 配置和 cli_set_process_title 函数设置 Worker 进程名称,便于识别和运维。1. 创建 Swoole 服务器时使用 worker_name 选项定义基础名称;2. 在 WorkerStart 回调中结合 cli_set_process_title 动态设置带编号的名称如 my_worker_0;3. 需判断!$server->taskworker 避免任务进程误设;4. 进程名在 ps 或 top 命令中显示,有助于多 Worker 或混合 Task 场景下的问题排查,但名称不宜过长以防系统截断。

Swoole 怎么设置 worker 进程的自定义名称

Swoole 中可以通过修改 worker_name 配置项来设置 Worker 进程的自定义名称,方便在系统中识别不同类型的进程。这个功能对调试和运维非常有用。

设置 worker_name 配置

在创建 Swoole 服务器时,通过 worker_name 选项为 Worker 进程设置名称。该配置不会影响主逻辑,仅用于改变进程在 pstop 命令中的显示名。

示例代码:

$server = new SwooleServer(“0.0.0.0”, 9501); $server->set([‘worker_num’ => 4, ‘worker_name’ => ‘my_worker’, // 设置 Worker 进程名称]); $server->on(‘WorkerStart’, function ($server, $worker_id) {// 可选:进一步根据 worker_id 区分命名 if (!$server->taskworker) {cli_set_process_title(“my_worker_{$worker_id}”); } }); $server->on(‘Receive’, function ($server, $fd, $reactor_id, $data) {$server->send($fd, “Hello”); }); $server->start();

使用 cli_set_process_title 动态命名

如果需要更精细控制,比如每个 Worker 显示不同的编号,可以在 WorkerStart 回调中使用 php 内置函数 cli_set_process_title()

这样做可以实现类似 my_worker_0my_worker_1 的命名效果。

Swoole 怎么设置 worker 进程的自定义名称

NameGPT 名称生成器

免费 AI 公司名称生成器,AI 在线生成企业名称,注册公司名称起名大全。

Swoole 怎么设置 worker 进程的自定义名称0

查看详情 Swoole 怎么设置 worker 进程的自定义名称

注意点:

  • 必须在 CLI 模式下运行
  • 仅对当前进程有效,需在 WorkerStart 中调用
  • 建议判断 $server->taskworker 避免任务进程被误设

查看效果

启动服务后,在终端执行:

ps aux | grep my_worker

可以看到类似输出:

user 12345 0.0 0.2 234567 8901 ? S 10:00 0:00 my_worker_0

基本上就这些。合理命名有助于排查问题,尤其是在多组 Worker 或混合 Task 进程的场景下。注意不要设置过长的名称,避免系统截断。

以上就是 Swoole 怎么设置 worker 进程的自定义名称的详细内容,更多请关注 php 中文网其它相关文章!

站长
版权声明:本站原创文章,由 站长 2025-10-28发表,共计1288字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
1a44ec70fbfb7ca70432d56d3e5ef742
text=ZqhQzanResources