DatabaseQueue
class DatabaseQueue extends Очередь implements Очередь, ОчередьСУдалением (Просмотреть исходный код)
Трейты
| Взаимодействие со временем |
Свойства
| protected Контейнер | $container | Экземпляр контейнера IoC. | из Очередь |
| protected string | $connectionName | Имя подключения для очереди. | из Очередь |
| protected bool | $dispatchAfterCommit | Указывает, что задачи должны быть отправлены после подтверждения всех транзакций базы данных. | из Очередь |
| static protected callable[] | $createPayloadCallbacks | Обработчики создания полезной нагрузки. | из Очередь |
| protected Подключение | $database | Экземпляр подключения к базе данных. | |
| protected string | $table | Таблица базы данных, хранящая задачи. | |
| protected string | $default | Имя очереди по умолчанию. | |
| protected int|null | $retryAfter | Время ожидания для повторной отправки задачи. |
Методы
| int | secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до заданной даты и времени. | из InteractsWithTime |
| int | availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить метку времени UNIX «доступно в». | из InteractsWithTime |
| DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразуйте его в экземпляр DateTime. | из InteractsWithTime |
| int | currentTime()
Получить текущее системное время в виде метки времени UNIX. | из InteractsWithTime |
| string | runTimeForHumans(float $startTime, float $endTime = null)
Учитывая начальное время, отформатируйте общее время выполнения для удобочитаемости человеком. | из InteractsWithTime |
| mixed | pushOn(string $queue, string $job, mixed $data = '')
Добавить новую задачу в очередь. | из Queue |
| mixed | laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')
Добавить новую задачу в определенную очередь через (n) секунд. | из Queue |
| void | bulk(array $jobs, mixed $data = '', string|null $queue = null)
Добавить массив задач в очередь. | |
| string | createPayload(Closure|string|object $job, string $queue, mixed $data = '')
Создать строку полезной нагрузки из заданной задачи и данных. | из Queue |
| array | createPayloadArray(string|object $job, string $queue, mixed $data = '')
Создать массив полезной нагрузки из заданной задачи и данных. | из Queue |
| array | createObjectPayload(object $job, string $queue)
Создать полезную нагрузку для обработчика очереди на основе объекта. | из Queue |
| string | getDisplayName(object $job)
Получить отображаемое имя для заданной задачи. | из Queue |
| mixed | getJobTries(mixed $job)
Получить максимальное количество попыток для обработчика очереди на основе объекта. | из Queue |
| mixed | getJobBackoff(mixed $job)
Получить откат для обработчика очереди на основе объекта. | из Queue |
| mixed | getJobExpiration(mixed $job)
Получить метку времени истечения срока действия для обработчика очереди на основе объекта. | из Queue |
| bool | jobShouldBeEncrypted(object $job)
Определить, следует ли шифровать задачу. | из Queue |
| array | createStringPayload(string $job, string $queue, mixed $data)
Создать типичный массив полезной нагрузки очереди на основе строки. | из Queue |
| static void | createPayloadUsing(callable|null $callback)
Зарегистрировать обратный вызов, который будет выполнен при создании полезных нагрузок заданий. | из Queue |
| array | withCreatePayloadHooks(string $queue, array $payload)
Создать заданную полезную нагрузку с использованием любых зарегистрированных хуков полезной нагрузки. | из Queue |
| mixed | enqueueUsing(Closure|string|object $job, string $payload, string|null $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Добавить задачу в очередь с помощью заданного обратного вызова. | из Queue |
| bool | shouldDispatchAfterCommit(Closure|string|object $job)
Определить, следует ли отправлять задачу после фиксации всех транзакций базы данных. | из Queue |
| void | raiseJobQueueingEvent(string $queue, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Вызвать событие помещения задачи в очередь. | из Queue |
| void | raiseJobQueuedEvent(string|null $queue, string|int|null $jobId, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Вызвать событие размещения задачи в очереди. | из Queue |
| string | getConnectionName()
Получить имя соединения для очереди. | из Queue |
| $this | setConnectionName(string $name)
Установить имя соединения для очереди. | из Queue |
| Container | getContainer()
Получить экземпляр контейнера, используемый соединением. | из Queue |
| void | setContainer(Container $container)
Установить экземпляр контейнера IoC. | из Queue |
| void | __construct(Connection $database, string $table, string $default = 'default', int $retryAfter = 60, bool $dispatchAfterCommit = false)
Создать новый экземпляр очереди базы данных. | |
| int | size(string|null $queue = null)
Получить размер очереди. | |
| mixed | push(string|object $job, mixed $data = '', string|null $queue = null)
Добавить новую задачу в очередь. | |
| mixed | pushRaw(string $payload, string|null $queue = null, array $options = [])
Добавить сырое содержимое в очередь. | |
| mixed | later(DateTimeInterface|DateInterval|int $delay, string|object $job, mixed $data = '', string|null $queue = null)
Добавить новую задачу в очередь через (n) секунд. | |
| mixed | release(string $queue, DatabaseJobRecord $job, int $delay)
Вернуть зарезервированную задачу обратно в очередь через (n) секунд. | |
| mixed | pushToDatabase(string|null $queue, string $payload, DateTimeInterface|DateInterval|int $delay = 0, int $attempts = 0)
Добавить сырое содержимое в базу данных с заданным отсрочкой (n) секунд. | |
| array | buildDatabaseRecord(string|null $queue, string $payload, int $availableAt, int $attempts = 0)
Создать массив для вставки заданной задачи. | |
| Job|null | pop(string|null $queue = null)
Извлечь следующую задачу из очереди. | |
| DatabaseJobRecord|null | getNextAvailableJob(string|null $queue)
Получить следующую доступную задачу для очереди. | |
| string|bool | getLockForPopping()
Получить блокировку, необходимую для извлечения следующей задачи. | |
| void | isAvailable(Builder $query)
Изменить запрос для проверки наличия доступных задач. | |
| void | isReservedButExpired(Builder $query)
Изменить запрос для проверки задач, которые зарезервированы, но истек срок их действия. | |
| DatabaseJob | marshalJob(string $queue, DatabaseJobRecord $job)
Зарезервировать задачу в экземпляр DatabaseJob. | |
| DatabaseJobRecord | markJobAsReserved(DatabaseJobRecord $job)
Пометить заданную задачу как зарезервированную. | |
| void | deleteReserved(string $queue, string $id)
Удалить зарезервированную задачу из очереди. | |
| void | deleteAndRelease(string $queue, DatabaseJob $job, int $delay)
Удалить зарезервированную задачу из очереди и отпустить её. | |
| int | clear(string $queue)
Удалить все задачи из очереди. | |
| string | getQueue(string|null $queue)
Получить очередь или вернуть значение по умолчанию. | |
| Connection | getDatabase()
Получить базовый экземпляр базы данных. |
Details
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до указанной даты и времени.
protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить временную метку "доступно в" (UNIX timestamp).
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.
protected int currentTime()
Получить текущее системное время в формате UNIX timestamp.
protected string runTimeForHumans(float $startTime, float $endTime = null)
Дано начальное время, отформатировать общее время выполнения для удобочитаемости человеком.
mixed pushOn(string $queue, string $job, mixed $data = '')
Добавить новую задачу в очередь.
mixed laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')
Добавить новую задачу в определённую очередь после (n) секунд.
void bulk(array $jobs, mixed $data = '', string|null $queue = null)
Добавить массив задач в очередь.
protected string createPayload(Closure|string|object $job, string $queue, mixed $data = '')
Создать строку полезной нагрузки из заданной задачи и данных.
protected array createPayloadArray(string|object $job, string $queue, mixed $data = '')
Создать массив полезной нагрузки из заданной задачи и данных.
protected array createObjectPayload(object $job, string $queue)
Создать полезную нагрузку для обработчика очереди на основе объектов.
protected string getDisplayName(object $job)
Получить имя для отображения заданной задачи.
mixed getJobTries(mixed $job)
Получить максимальное количество попыток для обработчика очереди на основе объектов.
mixed getJobBackoff(mixed $job)
Получить задержку для обработчика очереди на основе объектов.
mixed getJobExpiration(mixed $job)
Получить отметку времени истечения срока действия для обработчика очереди на основе объектов.
protected bool jobShouldBeEncrypted(object $job)
Определить, должна ли задача быть зашифрована.
protected array createStringPayload(string $job, string $queue, mixed $data)
Создать типичный массив полезной нагрузки очереди на основе строк.
static void createPayloadUsing(callable|null $callback)
Зарегистрировать обратный вызов, который будет выполнен при создании полезной нагрузки задачи.
protected array withCreatePayloadHooks(string $queue, array $payload)
Создать заданную полезную нагрузку с использованием любых зарегистрированных хуков для полезной нагрузки.
protected mixed enqueueUsing(Closure|string|object $job, string $payload, string|null $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Добавить задачу в очередь с использованием указанного обратного вызова.
protected bool shouldDispatchAfterCommit(Closure|string|object $job)
Определить, должна ли задача быть запущена после подтверждения всех баз данных.
protected void raiseJobQueueingEvent(string $queue, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Вызвать событие очереди задач.
protected void raiseJobQueuedEvent(string|null $queue, string|int|null $jobId, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Вызвать событие очереди задач.
string getConnectionName()
Получить имя подключения для очереди.
$this setConnectionName(string $name)
Установить имя подключения для очереди.
Container getContainer()
Получить экземпляр контейнера, используемый подключением.
void setContainer(Container $container)
Установить экземпляр контейнера IoC.
void __construct(Connection $database, string $table, string $default = 'default', int $retryAfter = 60, bool $dispatchAfterCommit = false)
Создать новый экземпляр очереди базы данных.
int size(string|null $queue = null)
Получить размер очереди.
mixed push(string|object $job, mixed $data = '', string|null $queue = null)
Добавить новую задачу в очередь.
mixed pushRaw(string $payload, string|null $queue = null, array $options = [])
Добавить сырое содержимое в очередь.
mixed later(DateTimeInterface|DateInterval|int $delay, string|object $job, mixed $data = '', string|null $queue = null)
Добавить новую задачу в очередь через (n) секунд.
mixed release(string $queue, DatabaseJobRecord $job, int $delay)
Вернуть зарезервированную задачу обратно в очередь через (n) секунд.
protected mixed pushToDatabase(string|null $queue, string $payload, DateTimeInterface|DateInterval|int $delay = 0, int $attempts = 0)
Добавить сырое содержимое в базу данных с заданным задержкой (n) секунд.
protected array buildDatabaseRecord(string|null $queue, string $payload, int $availableAt, int $attempts = 0)
Создать массив для вставки заданной задачи.
Задача|null pop(string|null $queue = null)
Извлечь следующую задачу из очереди.
protected DatabaseJobRecord|null getNextAvailableJob(string|null $queue)
Получить следующую доступную задачу для очереди.
protected строка|логическое значение getLockForPopping()
Получить блокировку, необходимую для извлечения следующей задачи.
protected void isAvailable(Builder $query)
Изменить запрос для проверки доступности задач.
protected void isReservedButExpired(Builder $query)
Изменить запрос для проверки задач, которые зарезервированы, но истекли.
protected DatabaseJob marshalJob(string $queue, DatabaseJobRecord $job)
Преобразовать зарезервированную задачу в экземпляр DatabaseJob.
protected DatabaseJobRecord markJobAsReserved(DatabaseJobRecord $job)
Пометить заданный идентификатор задачи как зарезервированный.
void deleteReserved(string $queue, string $id)
Удалить зарезервированную задачу из очереди.
void deleteAndRelease(string $queue, DatabaseJob $job, int $delay)
Удалить зарезервированную задачу из очереди и освободить её.
int clear(string $queue)
Удалить все задачи из очереди.
строка getQueue(string|null $queue)
Получить очередь или вернуть значение по умолчанию.
Connection getDatabase()
Получить базу данных.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Queue/DatabaseQueue.html