leocavalcante / swoole-mutex
PHP Swoole 并发运行时互斥抽象。
dev-master
2020-04-11 20:05 UTC
Requires
- php: >=7.4
Requires (Dev)
- phpunit/phpunit: ^9.1
- swoole/ide-helper: ^4.4
This package is auto-updated.
Last update: 2024-09-12 23:56:37 UTC
README
🚦 互斥 抽象,用于 PHP 的 Swoole 并发运行时。
能力越大,责任越大 —— 艾伦·本(我想是)
Swoole 的强大功能实现了跨多个进程和核心的并发,但它们之间共享状态/内存并不是一件简单的事情。 Swoole.Table
出现以提供帮助,但也许我们可以为这项任务提供一个更好的 API。
此包是 外观 模式,用于 Swoole.Table
,提供互斥模式常见的 API。
我们向 爱德加·Dijkstra (以及 Swoole 团队 因其出色的作品) 表示敬意。
安装
composer require leocavalcante/swoole-mutex
示例
跨 >1 个工作进程计数 HTTP 请求。
use Mutex\Atomic\Integer; use Swoole\Http\{Request, Response, Server}; $counter = new Integer(); $server = new Server('127.0.0.1', 8000); $server->on('request', function (Request $req, Response $res) use ($counter): void { if ($req->server['request_uri'] !== '/favicon.ico') { $counter->inc(); } $res->end('You are number: ' . $counter->value()); }); $server->set(['worker_num' => 4]); $server->start();
© 2k2O