RedisQueue
class RedisQueue extends Queue implements Queue (View source)
Traits
Properties
protected Container | $container | The IoC container instance. |
from Queue |
protected string | $connectionName | The connection name for the queue. |
from Queue |
static protected callable[] | $createPayloadCallbacks | The create payload callbacks. |
from Queue |
protected Factory | $redis | The Redis factory implementation. |
|
protected string | $connection | The connection name. |
|
protected string | $default | The name of the default queue. |
|
protected int|null | $retryAfter | The expiration time of a job. |
|
protected int|null | $blockFor | The maximum number of seconds to block for a job. |
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Push a new job onto the queue.
Push a new job onto the queue after a delay.
Push an array of jobs onto the queue.
Create a payload string from the given job and data.
Create a payload string from the given job and data.
Create a payload for an object-based queue handler.
Get the retry delay for an object-based queue handler.
Get the expiration timestamp for an object-based queue handler.
Create a typical, string based queue payload array.
Register a callback to be executed when creating job payloads.
Create the given payload using any registered payload hooks.
Create a new Redis queue instance.
Get the size of the queue.
Push a new job onto the queue.
Push a raw payload onto the queue.
Push a new job onto the queue after a delay.
Push a raw job onto the queue after a delay.
Migrate any delayed or expired jobs onto the primary queue.
Migrate the delayed jobs that are ready to the regular queue.
Retrieve the next job from the queue.
Delete a reserved job from the reserved queue and release it.
Get a random ID string.
Get the queue or return the default.
Get the connection for the queue.
Details
protected int
secondsUntil(DateTimeInterface|DateInterval|int $delay)
Get the number of seconds until the given DateTime.
protected int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int
parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected int
currentTime()
Get the current system time as a UNIX timestamp.
in
Queue at line 42
mixed
pushOn(string $queue, string $job, mixed $data = '')
Push a new job onto the queue.
in
Queue at line 56
mixed
laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')
Push a new job onto the queue after a delay.
in
Queue at line 69
void
bulk(array $jobs, mixed $data = '', string|null $queue = null)
Push an array of jobs onto the queue.
in
Queue at line 86
protected string
createPayload(string|object $job, string $queue, mixed $data = '')
Create a payload string from the given job and data.
protected array
createPayloadArray(string|object $job, string $queue, mixed $data = '')
Create a payload string from the given job and data.
in
Queue at line 121
protected array
createObjectPayload(object $job, string $queue)
Create a payload for an object-based queue handler.
in
Queue at line 150
protected string
getDisplayName(object $job)
Get the display name for the given job.
in
Queue at line 162
mixed
getJobRetryDelay(mixed $job)
Get the retry delay for an object-based queue handler.
in
Queue at line 180
mixed
getJobExpiration(mixed $job)
Get the expiration timestamp for an object-based queue handler.
in
Queue at line 200
protected array
createStringPayload(string $job, string $queue, mixed $data)
Create a typical, string based queue payload array.
in
Queue at line 218
static void
createPayloadUsing(callable $callback)
Register a callback to be executed when creating job payloads.
in
Queue at line 234
protected array
withCreatePayloadHooks(string $queue, array $payload)
Create the given payload using any registered payload hooks.
in
Queue at line 252
string
getConnectionName()
Get the connection name for the queue.
in
Queue at line 263
$this
setConnectionName(string $name)
Set the connection name for the queue.
in
Queue at line 276
void
setContainer(Container $container)
Set the IoC container instance.
void
__construct(Factory $redis, string $default = 'default', string|null $connection = null, int $retryAfter = 60, int|null $blockFor = null)
Create a new Redis queue instance.
int
size(string|null $queue = null)
Get the size of the queue.
mixed
push(string|object $job, mixed $data = '', string|null $queue = null)
Push a new job onto the queue.
mixed
pushRaw(string $payload, string|null $queue = null, array $options = [])
Push a raw payload onto the queue.
mixed
later(DateTimeInterface|DateInterval|int $delay, string|object $job, mixed $data = '', string|null $queue = null)
Push a new job onto the queue after a delay.
protected mixed
laterRaw(DateTimeInterface|DateInterval|int $delay, string $payload, string|null $queue = null)
Push a raw job onto the queue after a delay.
Job|null
pop(string $queue = null)
Pop the next job off of the queue.
protected void
migrate(string $queue)
Migrate any delayed or expired jobs onto the primary queue.
array
migrateExpiredJobs(string $from, string $to)
Migrate the delayed jobs that are ready to the regular queue.
protected array
retrieveNextJob(string $queue, bool $block = true)
Retrieve the next job from the queue.
void
deleteReserved(string $queue, RedisJob $job)
Delete a reserved job from the queue.
void
deleteAndRelease(string $queue, RedisJob $job, int $delay)
Delete a reserved job from the reserved queue and release it.
protected string
getRandomId()
Get a random ID string.
string
getQueue(string|null $queue)
Get the queue or return the default.
Connection
getConnection()
Get the connection for the queue.
Factory
getRedis()
Get the underlying Redis instance.