Платформа автоматизации в браузере с очередями задач
- Очередь задач
- Hangfire
- Живые обновления
- SignalR
- Сервисов в Docker
- 6
Задача
Сделать сервис, который массово выполняет сценарии в браузере: много аккаунтов, прокси, расписания, мониторинг и живые логи для оператора.
Решение
Воркеры на Playwright под управлением очередей Hangfire на Redis, сервер авторизации OpenIddict, SignalR для живых статусов задач и панель управления на Angular.
Архитектура
Оператор создаёт задачу — какие аккаунты, какой сценарий, в каком темпе, — и платформа раскладывает её на фоновые задания. Каждое задание открывает настоящий браузер через Playwright, входит выбранным для аккаунта способом, выполняет сценарий и пишет запись в лог. Задания стоят в очереди Hangfire на Redis, поэтому переживают перезапуск, повторяются после сбоя и ставятся на паузу.
Аккаунты, прокси (с типом и статусом) и системные настройки управляются из панели; пресеты темпа задают диапазон задержек между действиями. Любое изменение задачи или аккаунта приходит в панель через SignalR — оператор видит прогресс и логи в реальном времени без обновления страницы.
Авторизация — отдельный сервис: пользователи ASP.NET Identity за сервером OpenIddict, API проверяет его токены. Вся система — API, сервер авторизации, браузер, Redis, PostgreSQL и клиент — запускается в Docker Compose.
