Задача: введение и использование
Ссылка на документацию: doc/task введение и использование.docx.
Task — это платформа для унифицированного управления задачами по расписанию. В настоящее время основным способом планирования задач является HTTP, который поддерживает алгоритмы подписи.
На рисунке ниже можно увидеть, как работает task (платформа для централизованного управления задачами).
[Рисунок: Платформа task для централизованного управления задачами]
Из рисунка видно, что task — это платформа, которая управляет задачами всех систем.
Особенности:
- поддержка кластеризации;
- распределение задач обеспечивает балансировку нагрузки;
- при сбое задачи отправляется уведомление по электронной почте (при условии, что задача настроена на отправку уведомлений).
База данных — MySQL.
Архитектура:
- серверная часть: Spring Boot, Spring MVC, MyBatis, Quartz;
- клиентская часть: jQuery, Boostrap3.
Развёртывание:
- Скачайте последнюю версию кода с Gitee и выполните команду maven install. Откройте каталог target в проекте, чтобы увидеть пакет развёртывания task-1.0.0-bin.zip. Затем распакуйте этот пакет. Для запуска на Windows дважды щёлкните bin/window/start.bat. Если вы работаете в Linux, выполните bin/start.sh.
Исходный код можно скачать по ссылке: http://git.oschina.net/yuejing/task.
- Перейдите непосредственно на страницу https://gitee.com/yuejing/task/releases, чтобы загрузить последнюю версию выпуска. Затем извлеките файл из вложения.
- Создайте базу данных MySQL. По умолчанию система автоматически создаст базу данных (если база данных пуста, она будет создана автоматически).
Инициализируйте тестовые данные: файл task-init.sql находится в каталоге doc.
- Измените информацию о соединении JDBC во время развёртывания. Файл находится в ресурсах проекта в файле application.properties. При создании пакета war файл находится в /WEB-INF/classes/application.properties, и информация о подключении изменяется соответствующим образом.
jdbc1.driverClassName=com.mysql.jdbc.Driver
jdbc1.url=jdbc:mysql://127.0.0.1:3306/task?useUnicode=true&characterEncoding=UTF-8
jdbc1.username=root
jdbc1.password=root
- Установите количество потоков, доступных для выполнения задач по расписанию. Файл находится в resources проекта в файле application.properties. Когда создаётся пакет war, файл находится в /WEB-INF/classes/application.properties и изменяется соответствующим образом.
Количество потоков, используемых для выполнения задач, не задано по умолчанию равным 100
project.task.thread.num=100
6. Запустите проект в Eclipse или IDEA, выбрав com.ms.server.TaskApplication.java в качестве запускаемого класса (или создайте исполняемый файл, затем выполните команду mvn install, после чего в каталоге target появится файл task-1.0.0-bin.zip, распакуйте его, а затем запустите bin/window/start.bat в Windows или bin/start.sh в Linux).
7. Откройте браузер и перейдите по адресу http://127.0.0.1:8380/.
Вход:
Откройте главную страницу (http://127.0.0.1:8380/).
[Изображение: Страница входа]
Введите имя пользователя: admin
Пароль: 123456
Нажмите «Войти».
Управление пользователями:
Здесь вы можете изменить информацию об учётных записях пользователей, включая пароли, а также добавить несколько учётных записей. Обратите внимание, что рекомендуется не удалять учётную запись администратора, иначе вам придётся снова добавлять записи в базу данных.
[Изображение: Управление пользователями]
Конфигурация системы:
Обычно используется конфигурация по умолчанию.
[Изображение: Конфигурация системы]
Добавление задач:
Например, добавьте задачу для платёжной системы.
Конфигурация проекта:
Перейдите в Project Management → Add Project.
[Изображение: Добавление проекта]
Шифрование:
Существует четыре способа шифрования:
- Без шифрования. Это означает, что все вызовы интерфейса в этом проекте не зашифрованы.
- md5(token). После выбора этого метода появится следующее содержимое:
{token:"sdfsdfsfsdf",sign:"encryptionParameters"}
token представляет собой ключ, согласованный с бизнес-системой, который зашифрован с помощью md5.
sign представляет значение токена, зашифрованное с помощью md5. Задача отправляет HTTP-запрос с параметром sign.
- md5(канал + токен). После выбора этого метода появится следующее содержимое:
{channel:"50",token:"sdfsdfsfsdf",sign:"encryptionParameters"}
token представляет ключ, согласованный с бизнес-системой, который зашифрован с помощью md5.
channel представляет параметр, требуемый бизнес-системой (обратите внимание, что имя канала может быть изменено).
sign представляет собой значение канала + значение токена, которое зашифровано с использованием md5. Задача отправляет HTTP-запрос с параметрами channel и sign.
- md5(время + токен). После выбора этого метода появится следующее содержимое:
{time:"theCurrentTimestamp",token:"sdfsdfsfsdf",sign:"encryptionParameters"}
token представляет ключ, согласованный с бизнес-системой, который зашифрован с помощью md5.
time представляет параметр, требуемый бизнес-системой. Значение — текущая временная метка (обратите внимание, что единица измерения — миллисекунды).
sign представляет собой значение времени + значение токена, которое зашифровано с использованием md5. Задача отправляет HTTP-запрос с параметрами time и sign.
- md5(канал + время + токен). После выбора этого метода появится следующее содержимое:
{channel:"50",time:"theCurrentTimestamp",token:"sdfsdfsfsdf",sign:"encryptionParameters"}
token представляет ключ, согласованный с бизнес-системой, который зашифрован с помощью md5.
channel представляет параметр, требуемый бизнес-системой (обратите внимание, что имя канала может быть изменено).
time представляет параметр, требуемый бизнес-системой. Значение — текущая временная метка (обратите внимание, что единица измерения — миллисекунды).
sign представляет собой значение канала + значение времени + значение токена, которое зашифровано с использованием md5. Задача отправляет HTTP-запрос с параметрами channel, time и sign.
Уведомление по электронной почте: если выбрано «Нет», это означает, что задачи в этом проекте, которые не удалось запланировать, не будут отправлять уведомления по электронной почте.
Получатель электронной почты: это адрес электронной почты для получения уведомлений о задачах, которые не были запланированы. Можно указать несколько адресов электронной почты, разделив их запятыми (обратите внимание, что это английский язык).
Комментарии ( 0 )