> For the complete documentation index, see [llms.txt](https://docs.iexexchanger.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.iexexchanger.com/knowledge-base/obsluzhivanie/scheduler/scheduler-and-workers.md).

# Планировщик и фоновые процессы

Контроль планировщика, очередей, фоновых задач и сервисов наблюдения

Курсы, уведомления, автоматические проверки, выплаты, чаты, экспорты, очистка и мониторинг зависят от планировщика и очередей. Рабочая панель при остановленных фоновых процессах может продолжать открываться, поэтому нужен отдельный контроль.

## Что настраивается в панели

В **«Настройки» — «Общие настройки» — «Дополнительно» — «Планировщик задач»** находятся параметры, которые текущая форма разрешает менять. Не меняйте интервалы только для временного ускорения: параллельные или слишком частые запуски могут увеличить нагрузку и повторные запросы к провайдерам.

Состояние приложения проверяйте в **«Утилиты» — «Диагностика системы»**, процессы и расписания — в **«Утилиты» — «Службы»**, а очереди и показатели — в **«Утилиты» — «Horizon и Pulse» — «Laravel Horizon»** и **«Утилиты» — «Horizon и Pulse» — «Laravel Pulse»**, если эти сервисы включены.

Для «Планировщика задач» требуется право «Настройки cron» из блока «Настройки» или более широкое право «Общие настройки» из блока «Админпанель». Для «Диагностики системы» — «Разрешить управление статусом работы в админпанели» из блока «Админпанель». Для Horizon и Pulse — «Разрешить доступ к мониторингу данных» из блока «Админпанель». Для экрана «Службы» требуется «Просмотр служб обменника», а для действий — «Управление службами обменника» из блока «Админпанель». Права находятся по пути **«Пользователи» — «Список групп пользователей»**. Откройте нужную группу.

## Серверная проверка

Технический специалист может посмотреть зарегистрированное расписание:

```bash
php artisan schedule:list
```

Однократный тест планировщика:

```bash
php artisan schedule:run
```

Перед ручным запуском убедитесь, что системный cron не выполняет тот же цикл одновременно. Для очередей проверьте работающие процессы, задержку, число ожидающих и неудачных заданий.

## Признаки остановки

Типичные симптомы: курсы давно не обновлялись, автоматический платёж не проверяется, уведомления задержаны, AI-ответ не появляется, экспорт остаётся в ожидании, данные аналитики устарели или очистка не выполняется.

Один симптом не доказывает остановку всей очереди. Сначала определите конкретный поток и время последнего успешного результата.

### Временные файлы дополнительных полей

Клиент сначала загружает файл во временное закрытое хранилище, а после создания заявки система связывает его с заявкой. Неиспользованные загрузки очищает ежечасная команда:

```bash
php artisan dynamic-field-files:cleanup --limit=500
```

Она уже зарегистрирована в общем расписании с защитой от одновременного запуска и выполнением на одном сервере. Не создавайте для неё отдельный cron рядом с обычным `schedule:run`: это приведёт к дублированию обслуживания.

Если временные файлы накапливаются, проверьте единственный ежеминутный cron Laravel, результат `schedule:list`, право записи и удаления на закрытом диске и журнал последнего запуска. Не удаляйте каталог вручную: среди объектов могут находиться вложения уже созданных заявок.

## Безопасное восстановление

Исправьте причину процесса или соединения, затем возобновите обработку. Не повторяйте все неудачные задания одной командой, пока не проверены финансовые операции: запрос мог завершиться у провайдера и не подтвердиться локально.

После восстановления наблюдайте очередь до нормализации и проверьте несколько конечных результатов в панели.

Для разового запуска расписания из панели откройте строку **«Планировщик Laravel»** и нажмите «Запустить сейчас». Для Cron доступны запуск, остановка и перезапуск, но останавливать его следует только в согласованное техническое окно: вместе с ним перестанут начинаться все плановые задачи.

Техническая карта зависимостей и автозапуска находится в статьях [«Карта процессов iEXExchanger»](/knowledge-base/servery-i-domeny/overview/process-map.md) и [«Развёртывание и перезапуск»](/knowledge-base/servery-i-domeny/overview/process-map/deployment.md). Для существующего сервера со старой схемой отдельно используйте [«Supervisor и PM2 на существующем сервере»](/knowledge-base/servery-i-domeny/fastpanel-transition/supervisor-and-pm2.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.iexexchanger.com/knowledge-base/obsluzhivanie/scheduler/scheduler-and-workers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
