PHP Класс MyQEE\Server\WorkerTask

Показать файл Открыть проект

Открытые свойства

Свойство Тип Описание
$id integer 当前进程的唯一ID
$serverId integer 当前进程的服务器ID
$taskId integer 任务序号, 从0开始

Защищенные свойства (Protected)

Свойство Тип Описание
$server Swoole\Server
$serverName string 服务器名
$startTime integer 当前进程启动时间

Открытые методы

Метод Описание
__construct ( Swoole\Server $server ) WorkerBase constructor.
finish ( $rs ) 给投递者返回信息
log ( string $label, array $data = null, string $type = 'other', string $color = '[36m' ) 输出自定义log
onPipeMessage ( Swoole\Server $server, $fromWorkerId, $message, $fromServerId ) : null 接受到任意进程的调用(空方法)
onStart ( ) 对象启动(空方法)
onStop ( ) 退出程序是回调
onTask ( Swoole\Server $server, integer $taskId, integer $fromId, $data, integer $fromServerId ) : mixed 收到任务后回调(空方法)
sendMessage ( $data, integer $workerId, integer $serverId ) : boolean 向任意 worker 进程或者 task 进程发送消息

Защищенные методы

Метод Описание
debug ( string | array $labelOrData, array $data = null ) 调试信息
info ( string | array $labelOrData, array $data = null ) 输出信息
timeTick ( integer $interval, string | array | Closure $callback, mixed | null $params = null ) 增加一个优化执行时间间隔的定时器
trace ( string | array $labelOrData, array $data = null ) 跟踪信息
warn ( string | array $labelOrData, array $data = null ) 错误信息

Описание методов

__construct() публичный Метод

WorkerBase constructor.
public __construct ( Swoole\Server $server )
$server Swoole\Server

debug() защищенный Метод

调试信息
protected debug ( string | array $labelOrData, array $data = null )
$labelOrData string | array
$data array

finish() публичный Метод

给投递者返回信息
public finish ( $rs )
$rs

info() защищенный Метод

输出信息
protected info ( string | array $labelOrData, array $data = null )
$labelOrData string | array
$data array

log() публичный Метод

输出自定义log
public log ( string $label, array $data = null, string $type = 'other', string $color = '[36m' )
$label string
$data array
$type string
$color string

onPipeMessage() публичный Метод

接受到任意进程的调用(空方法)
public onPipeMessage ( Swoole\Server $server, $fromWorkerId, $message, $fromServerId ) : null
$server Swoole\Server
$fromWorkerId
$message
Результат null

onStart() публичный Метод

对象启动(空方法)
public onStart ( )

onStop() публичный Метод

退出程序是回调
public onStop ( )

onTask() публичный Метод

收到任务后回调(空方法)
public onTask ( Swoole\Server $server, integer $taskId, integer $fromId, $data, integer $fromServerId ) : mixed
$server Swoole\Server
$taskId integer
$fromId integer
$data
$fromServerId integer -1 则表示从自己服务器调用
Результат mixed

sendMessage() публичный Метод

和 swoole 不同的是, 它支持服务器集群下向任意集群去投递数据
public sendMessage ( $data, integer $workerId, integer $serverId ) : boolean
$data
$workerId integer
$serverId integer
Результат boolean

timeTick() защищенный Метод

如果你有一个定时器任务会在每个进程上运行, 但是又不希望所有的定时器在同一刹那执行, 那么用这个方法非常适合, 它可以根据进程数将定时器执行的时间分散开. 例如你启动了10个taskWorker进程, 定时器是间隔10秒执行1次, 那么正常情况下, 这10个进程会在同1秒执行, 在下一个10秒又同时执行... 而通过本方法添加的定时器是这样执行的: 进程1会在 00, 10, 20, 30, 40, 50秒执行, 进程2会在 01, 11, 21, 31, 41, 51秒执行, .... 进程9会在 09, 19, 29, 39, 49, 59秒执行. 每个进程运行的间隔仍旧是10秒钟, 但是它不会和其它进程在同一时间执行
protected timeTick ( integer $interval, string | array | Closure $callback, mixed | null $params = null )
$interval integer 时间间隔, 单位: 毫秒
$callback string | array | Closure 回调函数
$params mixed | null

trace() защищенный Метод

跟踪信息
protected trace ( string | array $labelOrData, array $data = null )
$labelOrData string | array
$data array

warn() защищенный Метод

错误信息
protected warn ( string | array $labelOrData, array $data = null )
$labelOrData string | array
$data array

Описание свойств

$id публичное свойство

当前进程的唯一ID
public int $id
Результат integer

$server защищенное свойство

protected Server,Swoole $server
Результат Swoole\Server

$serverId публичное свойство

当前进程的服务器ID
public int $serverId
Результат integer

$serverName защищенное статическое свойство

服务器名
protected static string $serverName
Результат string

$startTime защищенное статическое свойство

当前进程启动时间
protected static int $startTime
Результат integer

$taskId публичное свойство

任务序号, 从0开始
public int $taskId
Результат integer