For the complete documentation index, see llms.txt. This page is also available as Markdown.

CRON и фоновые процессы

Для чего нужен раздел

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

Когда использовать

Открывайте раздел, когда курсы не обновляются, BestChange устарел, файловые курсы не подтягиваются, уведомления задерживаются, заявки не архивируются, автовыплаты не выполняются, очереди зависли или задачи выполняются слишком часто.

Основные возможности

Возможность
Что означает простыми словами
Когда использовать

Обновление курсов источников

Автоматически получает курсы с бирж и источников

Для актуальных курсов обмена

Обновление BestChange

Автоматически получает данные BestChange

Для направлений, завязанных на BestChange

Обновление файловых курсов

Загружает курсы из файлов или партнёрских источников

Если используется внешний файл курсов

Режим manual

Процесс запускается вручную

Для теста или временной остановки

Режим auto

Процесс запускается по расписанию

Для обычной работы

Режим event

Процесс реагирует на события

Когда нужно запускать не просто по таймеру

Адаптивное состояние

Система оценивает длительность и частоту обновлений

Для понимания нагрузки и задержек

Очереди

Фоновые задания сайта

Для писем, уведомлений, выплат, тяжёлых операций

Horizon / Pulse

Мониторинг очередей и состояния системы

Для технической диагностики

Очистка логов

Удаление старых записей

Чтобы база не разрасталась

Архивирование заявок

Перенос старых заявок в архив

Чтобы рабочий список был быстрым и чистым

Поля и настройки

Поле / настройка
Что означает
Как правильно заполнять
Важно знать

rates_courses_timer_mode

Режим обновления обычных курсов

auto для рабочей системы, manual для ручного запуска

Если manual, курсы могут устареть

rates_courses_timer_value

Интервал обновления обычных курсов

Выберите интервал с учётом нагрузки источников

Слишком частые запросы могут привести к блокировкам

rates_bestchange_timer_mode

Режим обновления BestChange

auto, если направления завязаны на BestChange

Если выключить, BestChange-курсы станут неактуальными

rates_bestchange_timer_value

Интервал BestChange

Обычно реже, чем внутренние источники

Слишком частые запросы могут быть лишней нагрузкой

rates_files_timer_mode

Режим обновления файловых курсов

auto, если файл должен подтягиваться сам

Если файл внешний, проверьте доступность ссылки

rates_files_timer_value

Интервал файловых курсов

Учитывайте частоту обновления файла у партнёра

Нет смысла обновлять чаще, чем меняется файл

Текущий интервал

Как часто система сейчас запускает процесс

Используйте для диагностики

Может отличаться от выбранного при адаптивной логике

Рекомендованный интервал

Что система считает безопасным интервалом

Сравнивайте с текущим

Помогает снизить нагрузку

Среднее время последних запусков

Сколько длится процесс

Если растёт, ищите медленный источник

Большое время выполнения ведёт к очередям

Количество ошибок подряд

Сколько раз процесс упал

Если больше 0, проверьте логи

Ошибки могут остановить обновление данных

Последний запуск

Когда процесс стартовал

Смотрите при жалобах на устаревшие курсы

Если давно не запускался, проверьте CRON

Последний успешный запуск

Когда процесс завершился успешно

Главный показатель здоровья

Запуск без успеха не обновляет данные

Причина последнего изменения

Почему интервал изменился

Используйте при адаптивном режиме

Может подсказать источник проблемы

CRON на сервере

Системное расписание фоновых задач

Должно быть настроено на сервере

Без серверного CRON автообновления не работают

Очереди

Обработчики фоновых задач

Должны быть запущены

Без очередей письма и задачи могут зависать

Как настроить

  1. Откройте Настройки — Прочее — CRON.

  2. Для обычных курсов выберите режим auto и безопасный интервал.

  3. Для BestChange включите auto только если используете BestChange в направлениях.

  4. Для файловых курсов включите auto только если настроены файловые источники.

  5. Проверьте “последний успешный запуск”.

  6. Если процесс долго выполняется, увеличьте интервал.

  7. Проверьте серверный CRON и очереди.

  8. После изменения курса проверьте калькулятор на публичном сайте.

Что реально зависит от фоновых процессов

Область
Что делает фоновый процесс
Что увидит администратор при проблеме

Курсы

Обновляет источники, BestChange, файлы курсов, историю и агрегированные свечи

Курс старый, дата обновления не меняется, XML не обновляется

Заявки

Пересчитывает заявки, закрывает неоплаченные по правилам, архивирует старые заявки, запускает экспорт

Заявки зависают, архив не пополняется, пересчет не происходит

Мерчанты

Обрабатывает webhook, проверяет оплату, ставит заявки в очередь автовыплат

Оплата не подтягивается, статус не меняется

Автовыплаты

Готовит заявки к выплате и выполняет выплаты через провайдера

Заявка стоит в ожидании выплаты или ошибка не уходит дальше

Резервы

Обновляет резервы из файлов и строит дневные агрегаты

Резерв на сайте не совпадает с источником

Уведомления

Отправляет письма, Telegram и часть realtime-уведомлений через очередь

Уведомления приходят поздно или не приходят

Медиа

Обрабатывает загруженные файлы и очищает корзину медиа

Изображения или документы долго обрабатываются

Аналитика

Пересчитывает прибыль, заявки, резервы, пользователей и системные показатели

Аналитика устарела или не совпадает с новыми заявками

Безопасность

Синхронизирует баны, истечение временных ролей и доверенные прокси

Бан или роль применяются с задержкой

Обслуживание

Чистит старые логи, временные экспорты, presence-историю и диагностику

База и storage растут, старые данные не удаляются

Серверная часть: что должен знать специалист

В админке можно выбрать режимы обновления, но сами фоновые процессы должны быть настроены на сервере.

Компонент
Назначение
Если не работает

Laravel scheduler

Запускает расписание каждую минуту

Автоматические задачи не стартуют

Redis

Хранит очереди и быстрые данные

Horizon и многие задачи не работают стабильно

Horizon или queue worker

Выполняет задания из очередей

Письма, Telegram, аналитика и часть операций зависают

PHP CLI

Выполняет artisan-команды

Cron может падать даже при рабочем сайте

Supervisor/systemd

Держит worker-процессы после перезагрузки

Очереди остановятся после закрытия SSH или рестарта

Если пользователь не технический, AI должен объяснить общий смысл и отправить его к разделу "Технические фоновые процессы: CRON, очереди, Horizon".

Точный CRON для FastPanel PHP 8.4

В FastPanel scheduler добавляется одной командой:

Объяснение:

Часть
Что означает

/opt/php84/bin/php

PHP 8.4 из FastPanel

/var/www/fastpanel_user/data/www/example.com/artisan

Полный путь к файлу artisan проекта

schedule:run

Команда Laravel scheduler

>/dev/null 2>&1

Не отправлять каждую минуту системный вывод cron

Внимание:

Правило
Почему важно

Между /opt/php84/bin/php и путем к проекту обязательно должен быть пробел

Без пробела команда не выполнится правильно

Путь к проекту должен быть полным и точным, как в FastPanel

Cron не понимает сокращенные пути и не знает текущую папку

Используется именно PHP 8.4 FastPanel

Не используйте /usr/bin/php, потому что это может быть другая версия PHP

Путь должен вести к artisan, а не к public

Scheduler запускается из backend-проекта

Нужен один scheduler каждую минуту

Дубли могут запускать задачи параллельно

Типовые ошибки

Ошибка / ситуация
Причина
Что сделать

Курсы не обновляются

Режим manual, не работает CRON или источник недоступен

Включить auto, проверить CRON, логи парсера

BestChange устарел

Выключен таймер BestChange или есть ошибка API

Проверить настройки BestChange и логи

Файловые курсы пустые

Недоступен файл, неверный формат или выключен таймер

Проверить ссылку, preview и формат файла

Очередь растёт

Задачи выполняются медленнее, чем создаются

Проверить обработчики очереди, логи и тяжёлые процессы

Письма не уходят сразу

Почта работает через очередь, обработчик очереди остановлен

Проверить очереди и настройки email

Автовыплата не стартует

Очередь, лимит, статус или шлюз не готов

Проверить статус заявки, автовыплату, журналы платежных шлюзов

Важные предупреждения

Не ставьте слишком маленькие интервалы обновления “на всякий случай”. Частые запросы могут перегрузить сервер, привести к блокировкам API источников курсов и создать задержки в очередях. Любое изменение CRON проверяйте на реальных курсах, заявках и логах.

CRON и очереди часто требуют серверной настройки. Если в админке всё включено, но процессы не идут, проблема может быть не в форме админки, а в серверном расписании или обработчик очереди-процессах.

Связанные разделы

Курсы, Источники курсов, BestChange, Файловые курсы, Формулы, Заявки, Email-уведомления, Telegram Bot, Логи, Ошибки и диагностика.

Последнее обновление

Это было полезно?