1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mlkom-scheduledTask

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 3.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 09.03.2025 20:02 155a6d7

Система планировщика задач

Система разработана с использованием Swoole и имеет следующие основные функции:

  1. Добавление задачи с периодическим выполнением, минимальная единица времени — минута;
  2. Ведение логов выполнения каждой задачи;
  3. Уведомление при возникновении ошибок в задачах: уведомление операторов при отказе сервиса, уведомление программистов при возникновении ошибок программы.

Описание Swoole

Swoole — это расширение для PHP, написанное на C++. Это высокопроизводительный сетевой фреймворк для PHP, который предоставляет асинхронные многопоточные серверы, асинхронные TCP/UDP клиенты, асинхронные соединения MySQL, пулы соединений, AsyncTask, очереди сообщений, миллисекундные таймеры, асинхронное чтение и запись файлов, асинхронное DNS-запросы.

  1. Официальный сайт: http://www.swoole.com
  2. Адрес на GitHub: https://github.com/swoole/swoole-src

Как использовать систему планировщика задач

  1. Запустите систему планировщика задач php Timer.php start

Запуск сервера

  1. Перезапустите рабочий процесс php Timer.php reload

Просмотр процессов

  1. Остановите систему php Timer.php stop### Пример использования клиентского API, см. client.php
$client = new swoole_client(SWOOLE_SOCK_TCP);
// Инициализация сетевого соединения
$ret = $client->connect('127.0.0.1', 9503, 0.5);
if (!$ret) {
    echo "Переполнение. errno=" . $client->errCode;
}

// Добавление задачи
$data = [
    's_id'       => 4,
    's_interval' => 3000,
    's_title'    => 'Я иду, я иду',
    's_url'      => 'http://queue.caihong.com/stat/stat/login/',
    'u_id'       => 1
];
$buffer = ['type' => 'add', 'list' => $data];

// Удаление задачи
$delData = ['s_id' => 3, 's_timerId' => 3];
$buffer  = ['type' => 'del', 'list' => $delData];

$buffer  = json_encode($buffer) . "\r\n\r\n";
$client->send($buffer);

$ret = $client->recv();
print_r(json_decode($ret, true));

Все изменения были сделаны согласно правилам перевода, указанным выше.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mlkom-scheduledTask.git
git@api.gitlife.ru:oschina-mirror/mlkom-scheduledTask.git
oschina-mirror
mlkom-scheduledTask
mlkom-scheduledTask
master