XXL-JOB — это распределённая платформа для планирования задач с основными целями проектирования: быстрая разработка, простое обучение, лёгкость и простота масштабирования. Сейчас он с открытым исходным кодом, подключён к онлайн-линиям многих компаний и готов к использованию из коробки. Обзор:
Адрес на GitHub:Вход по гиперссылке виден.
Официальный адрес документа:Вход по гиперссылке виден.
Сначала скачайте исходный код, адрес:Вход по гиперссылке виден.(Скачать через домашний gitee)
Создание структур баз данных и таблиц
Адрес файла скрипта:/xxl-job/doc/db/tables_xxl_job.sql, импортируйте скрипт в базу MySQL, и скрипт автоматически определит, существует ли xxl_job база данных, а также автоматически создаст xxl_job базу данных, создаёт соответствующую структуру таблицы и вставит исходные данные. Как показано ниже:
Откройте проект
Используйте Eclipse для импорта проекта Maven и компиляции его с Maven.
Структура исходного кода следующая:
xxl-job-admin: диспетчерский центр xxl-job-core: распространённые зависимости xxl-job-executor-samples: пример executor (выберите соответствующую версию исполнителя, вы можете использовать её напрямую, или обратиться к нему и преобразовать существующий проект в исполнитель) :xxl-job-executor-sample-springboot:Версия Springboot через исполнитель управления Springboot рекомендуется этот метод; :xxl-job-executor-sample-frameless: нефреймированная версия;
Запустите центр планирования xxl-job-admin
xxl-job-admin для настройки соединения базы данных mysql:
Откройте конфигурационный файл /xxl-job/xxl-job-admin/src/main/resources/application.properties и настройте его следующим образом:
Откройте файл XxlJobAdminApplication.java и начинайте проект.
Получите доступ к интерфейсу управления вебом по следующему адресу:http://127.0.0.1:8080/xxl-job-admin, как показано на рисунке ниже:
Учетная запись по умолчанию "Админ/123456”
Запустить проект актуатора
Найдите проект xxl-job-executor-sample-springboot и измените конфигурационный файл application.properties следующим образом:
Официальное подробное объяснение конфигурации привода:
### Развертывание диспетчерского центра и адрес [Опционально]: Если в кластере диспетчерского центра несколько адресов, они разделены запятыми. Исполнитель использует этот адрес для регистрации «Сердцебиения исполнителя» и «Вызова результата задачи». Если он пустой, авторегистрация отключается. xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin ### Токен связи актуатора [опционально]: включен, когда не пуст; xxl.job.accessToken= ### Actuator AppName [Optional]: Основа группировки для регистрации сердцебиения актуатора; Если он пустой, отключите авторегистрацию xxl.job.executor.appname=xxl-job-executor-sample ### Регистрация исполнителя [Необязательно]: Сначала используйте эту конфигурацию как адрес регистрации и используйте встроенный сервис "IP:PORT" в качестве адреса регистрации, когда он пуст. Это обеспечивает более гибкую поддержку исполнения типов контейнеров, проблем с динамическим IP и динамическим отображением портов. xxl.job.executor.address= ### IP исполнителя [Необязательно]: По умолчанию пуст для автоматического получения IP, и указанный IP можно задать вручную, если сетевой сетевой карта многокартный, что не будет привязано к хосту и полезно только для коммуникации. Адресная информация для «Регистрации исполнителя» и «Задачи запроса и запуска диспетчерского центра»; xxl.job.executor.ip= ### Номер порта привода [опционально]: Если он меньше или равен 0, он будет автоматически получен; Порт по умолчанию — 9999, поэтому при развертывании нескольких актуаторов на одном устройстве обращайте внимание на настройку разных портов актуатора. xxl.job.executor.port=9999 ### Executor Запустить путь к диску хранения журналов [Опционально]: На этом пути должны быть права на чтение и запись; Если он пуст, используется путь по умолчанию; xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler ### Количество дней для сохранения триггерного лога [Необязательно]: Просроченные логи автоматически очищаются, а предел превышает или равен 3. в противном случае, например, -1, отключить функцию автоматической очистки; xxl.job.executor.logretentiondays=30
Откройте платформу управления Диспетчерским центром, нажмите меню Scheduler Management, добавьте планировщик и заполните имя приложения: xxl-job-executor-itsvse
Откройте файл XxlJobExecutorApplication.java и попробуйте запустить исполнитель, как показано ниже:
Проект xxl-job-executor-sample-springboot откроет два порта: порт 8081 предназначен для внешних интерфейсных сервисов, а порт 9999 — для вызовов xxl-job-admin (используемых для связи с платформой планирования).
Создайте новую задачу планирования
Executor Выберите только что созданный актуатор, Cron выполнит один раз за 10 секунд (*/10 * * * * ?), выберите «BEAN» в режиме запуска, заполните JobHandler: demoJobHandler и заполните остальные опции по своему желанию, просто сохраните его.
Начните задачу с крайнего правого края списка, затем нажмите «Журнал запроса», как показано на следующем рисунке:
По логам платформы диспетчерского центра и исполнительу вы можете увидеть, что задача успешно выполнена, и она выполняется каждые 10 секунд.
(Конец)
|