olbie / miniq
迷你队列
0.2.1
2024-04-28 14:49 UTC
Requires
- php: >=8.1
- react/event-loop: ^1.5
- react/socket: ^1.15
README
MiniQ是一个针对队列管理设计的简约PHP库,利用套接字进行进程间通信。它提供了一种简单的方法来管理任务队列,并使用工作进程处理这些队列。MiniQ基于ReactPHP组件构建,适合异步PHP应用程序。
特性
- 简单轻量级的队列管理。
- 使用Unix套接字进行通信。
- 易于集成到ReactPHP事件循环。
- 支持异步任务处理。
翻译
- 俄语
- 乌克兰(进行中)
安装
您可以使用Composer安装MiniQ。在您的项目目录中运行以下命令
composer require olbie/miniq
要求
- PHP 8.1或更高版本
- Composer用于依赖管理
使用
服务器设置
创建服务器以管理您的任务
<?php require_once __DIR__ . '/vendor/autoload.php'; use olbie\MiniQ\MiniQ; $miniQ = new MiniQ(__DIR__); $server = $miniQ->createServer(); $server->start();
工作设置
设置工作进程以处理任务
<?php use olbie\MiniQ\MiniQ; use React\EventLoop\Loop; require_once __DIR__ . '/vendor/autoload.php'; $miniQ = new MiniQ(__DIR__); $worker = $miniQ->createWorkerServer(); $worker->run();
客户端使用
使用客户端向队列添加任务
<?php use olbie\MiniQ\MiniQ; use olbie\MiniQ\Job; require_once __DIR__ . '/vendor/autoload.php'; $totalTask = 25; $miniQ = new MiniQ(__DIR__); $client = the miniQ->createClient(); for ($i = 0; $i < $totalTask; $i++) { $client->set(new Job(rand(1, 10))); }
待办事项
- 编写测试
- 编写许可文件
- 翻译文档
- 乌克兰
- 俄语
- 制作symfony bandle
许可
GPL-3.0-or-later。有关更多详细信息,请参阅LICENSE文件。
贡献
欢迎贡献!
联系方式
如有问题或反馈,请联系Oleksii Bielokudrenko,邮箱:oleksii.bielokudrenko@gmail.com。