alex/mutexlock

此包的最新版本(dev-master)没有可用的许可证信息。

MutexLock 确保在多个相同的Web服务器中定义的cron作业一次不会执行多个任务。由Redis支持。

dev-master 2018-02-23 13:51 UTC

This package is not auto-updated.

Last update: 2020-08-07 17:53:32 UTC


README

MutexLock 确保在多个相同的Web服务器中定义的cron作业一次不会执行多个任务。由Redis支持。

示例用法

use Monolog\Logger;
use Monolog\Handler\SyslogHandler;
use Monolog\Formatter\LineFormatter;

$log = new Logger('cron');
$syslog = new SyslogHandler('webapp');
$formatter = new LineFormatter("%channel%.%level_name%: %message%");
$syslog->setFormatter($formatter);
$log->pushHandler($syslog);

MutexLock\Lock::init([
    'logger' => $log,
    'host'   => '127.0.0.1',
    'port'   => '6379',
]);

if (!MutexLock\Lock::set(LOCK_KEY, LOCK_TIME)) {
    return;
}

许可证

MIT