DatabaseQueue
class DatabaseQueue extends Очередь implements Очередь, ОчередьСВозможностьюОчистки (Просмотреть исходный код)
Трейты
| InteractsWithTime |
Свойства
| protected Контейнер | $container | Экземпляр контейнера IoC. | из Очередь |
| protected string | $connectionName | Имя соединения для очереди. | из Очередь |
| protected | $dispatchAfterCommit | Указывает, что задачи должны быть отправлены после завершения всех транзакций базы данных. | из Очередь |
| static protected callable[] | $createPayloadCallbacks | Обратные вызовы создания полезной нагрузки. | из Очередь |
| protected Соединение | $database | Экземпляр соединения с базой данных. | |
| protected string | $table | Таблица базы данных, в которой хранятся задачи. | |
| protected string | $default | Имя очереди по умолчанию. | |
| protected int|null | $retryAfter | Время истечения срока действия задачи. |
Методы
| int | secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до заданного DateTime. | из InteractsWithTime |
| int | availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить метку времени UNIX "доступно в". | из InteractsWithTime |
| DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразуйте его в экземпляр DateTime. | из InteractsWithTime |
| int | currentTime()
Получить текущее системное время в виде метки времени UNIX. | из 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 | 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 $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Поместить задачу в очередь, используя заданный обратный вызов. | из Queue |
| bool | shouldDispatchAfterCommit(Closure|string|object $job)
Определить, следует ли отправлять задачу после фиксации всех транзакций базы данных. | из Queue |
| void | raiseJobQueuedEvent(string|int|null $jobId, Closure|string|object $job)
Вызвать событие добавления задачи в очередь. | из 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)
Отправить сырой payload в базу данных с заданным отложенным выполнением через (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()
Получить базовый экземпляр базы данных. |
Подробности
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.
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 = '')
Создать строку payload из заданной задачи и данных.
protected array createPayloadArray(string|object $job, string $queue, mixed $data = '')
Создайте массив данных для задачи из заданной задачи и данных.
protected array createObjectPayload(object $job, string $queue)
Создать данные для обработчика очереди на основе объектов.
protected string getDisplayName(object $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 $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Поместить задачу в очередь, используя предоставленный обратный вызов.
protected bool shouldDispatchAfterCommit(Closure|string|object $job)
Определить, нужно ли выполнять задачу после подтверждения всех транзакций базы данных.
protected void raiseJobQueuedEvent(string|int|null $jobId, Closure|string|object $job)
Сгенерировать событие о добавлении задачи в очередь.
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)
Создать массив для вставки заданной задачи.
Job|null pop(string|null $queue = null)
Извлечь следующую задачу из очереди.
protected DatabaseJobRecord|null getNextAvailableJob(string|null $queue)
Получить следующую доступную задачу для очереди.
protected string|bool 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)
Удалить все задачи из очереди.
string getQueue(string|null $queue)
Получить очередь или вернуть значение по умолчанию.
Connection getDatabase()
Получить базовую базу данных.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Queue/DatabaseQueue.html