makasim/php-fpm-queue
Composer 安装命令:
composer require makasim/php-fpm-queue
包简介
Use php-fpm as a simple built-in async queue
关键字:
README 文档
README
Use php-fpm as a simple built-in async queue. Based on interoperable queue interfaces Queue Interop.
Usage
composer makasim/php-fpm-queue:0.1.x-dev queue-interop/queue-interop:0.7.x-dev enqueue/dsn:0.9.x-dev
A sender script:
<?php # sender.php use Makasim\PhpFpm\PhpFpmConnectionFactory; require_once __DIR__.'/vendor/autoload.php'; $context = (new PhpFpmConnectionFactory('tcp://localhost:9000'))->createContext(); $queue = $context->createQueue('/app/worker.php'); $message = $context->createMessage('aBody'); $context->createProducer()->send($queue, $message);
A worker script:
<?php # worker.php use Makasim\PhpFpm\PhpFpmConnectionFactory; require_once __DIR__.'/vendor/autoload.php'; $context = (new PhpFpmConnectionFactory('tcp://localhost:9000'))->createContext(); // or //$context = (new PhpFpmConnectionFactory('unix:///var/run/php/php7.1-fpm.sock'))->createContext(); $queue = $context->createQueue(__FILE__); $consumer = $context->createConsumer($queue); if ($message = $consumer->receiveNoWait()) { // process message $consumer->acknowledge($message); }
Start PHP-FPM:
docker run -v `pwd`:/app -p 9000:9000 php:7.2-fpm
Send a message:
php sender.php
Credits
Inspired by Benjamin post Using php-fpm as a simple built-in async queue
License
统计信息
- 总下载量: 110
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 115
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-10-15