PHP 精简磁盘消息队列管理器

资助包维护!
其他

v1.6 2021-11-02 13:58 UTC

This package is auto-updated.

Last update: 2024-08-29 05:37:22 UTC


README

关于

MesQ 是一个基于磁盘的 PHP 精简消息队列管理器

  • 组装和入队(未)频繁( incoming)消息
  • 一次出队(计划?)

MesQ 支持FIFO、LIFO和优先级消息队列

消息可以是标量、数组或对象类型中的任何一种

使用方法

需要(以下)

  • 唯一的 <queueName>
  • 现有的可读写 <目录>

有关 MesQ 配置键,请查阅 src/MesQinterface.php。

向队列添加消息

<?php
namespace Kigkonsult\MesQ;

require 'vendor/autoload.php';

...
$config = [
    MesQ::QUEUENAME => <queueName>,
    MesQ::DIRECTORY => <directory>,
    MesQ::QUEUETYPE => MesQ::FIFO, // default
];

MesQ::factory( $config )
    ->push( <message> );
...

处理队列中的消息

<?php
namespace Kigkonsult\MesQ;

require 'vendor/autoload.php';

...
$config = [
    MesQ::QUEUENAME       => <queueName>,
    MesQ::DIRECTORY       => <directory>,
    MesQ::RETURNCHUNKSIZE => 1000
];

$mesQ = MesQ::factory( $config );
if( $mesQ->messageExists() {
    while( $message = $mesQ->getMessage()) {
        ...
        // process message, max 1000
        ...
    } // end while
} // end if

...

有关更详细的用法,请阅读 MesQ 文档。

安装

Composer,从命令行

composer require kigkonsult/mesq

在你的 composer.json 中

{
    "require": {
        "kigkonsult/mesq": "dev-master"
    }
}

版本 1.6 支持 PHP 8.0、1.4 7.4、1.2 7.0。

赞助

使用 paypal.me/kigkonsult 进行捐款将受到欢迎。发票,请 电子邮件

许可

MesQ 在 LGPLv3 许可下授权。