Code Monkey home page Code Monkey logo

php-queue's Introduction

php+redis消息队列

环境

  • PHP >= 5.4
  • composer

安装

composer require flc/php-queue

使用范例

producer

/**
 * 任务创建
 */
require_once __DIR__ . '/bootstrap.php';

use Flc\Queue\Manager;
use Jobs\Demo;

// 创建工作
$demo = new Demo('测试');

// 推送到队列
for ($i = 0; $i <= 100; $i ++) {
    Manager::instance()->push($demo);
}

echo Manager::instance()->count();

consumer

/**
 * 任务执行者(常驻)
 */
require_once __DIR__ . '/bootstrap.php';

use Flc\Queue\Manager;
use Jobs\Demo;

if ('cli' !== php_sapi_name()) {
    die('必须在命令行模式下运行');
}

while (true) {
    // 从队列拉取任务
    $job = Manager::instance()->pull();

    // 如无任务,则休息2秒
    if (! $job) {
        sleep(2);
        continue;
    }

    try {
        call_user_func_array([$job, 'handle'], []);
    } catch (Exception $e) {
        echo $e->getMessage();
    }
}

License

MIT

php-queue's People

Contributors

flc1125 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.