Архитектура
Компоненты системы
Xray Checker состоит из нескольких ключевых компонентов, работающих вместе для обеспечения комплексного мониторинга прокси:
Основные компоненты
-
Менеджер подписок
- Обрабатывает получение конфигурации прокси
- Поддерживает множество форматов источников
- Управляет обновлениями конфигурации
- Проверяет конфигурации прокси
-
Интеграция с Xray Core
- Управляет процессом Xray Core
- Обрабатывает настройку прокси-соединений
- Поддерживает SOCKS5 порты
- Управляет обновлениями конфигурации
-
Проверка прокси
- Выполняет проверки работоспособности
- Измеряет задержку
- Проверяет функциональность прокси
- Управляет расписанием проверок
-
Система метрик
- Собирает метрики производительности
- Управляет интеграцией с Prometheus
- Обрабатывает сохранение метрик
- Поддерживает push gateway
-
Веб-сервер
- Предоставляет конечные точки статуса
- Обслуживает веб-интерфейс
- Обрабатывает API-запросы
- Управляет аутентификацией
Детали компонентов
Менеджер подписок
Менеджер подписок отвечает за:
- Получение конфигурации из URL подписок
- Парсинг различных форматов конфигурации
- Проверку конфигураций прокси
- Запуск обновлений конфигурации
Интеграция с Xray Core
Обрабатывает все взаимодействия с Xray Core:
- Управление жизненным циклом процесса Xray
- Генерация конфигураций Xray
- Поддержка SOCKS5 портов
- Обработка настройки соединений
Проверка прокси
Выполняет фактическую проверку прокси:
- Запланированные проверки работоспособности
- Тестирование соединений
- Измерение задержки
- Отслеживание статуса
Система метрик
Управляет всей функциональностью, связанной с метриками:
- Сбор метрик статуса прокси
- Отслеживание метрик задержки
- Управление интеграцией с Prometheus
- Обработка отправки метрик
Веб-сервер
Предоставляет веб-интерфейс и API:
- Обработка конечных точек статуса
- Обслуживание веб-интерфейса
- Обработка API-запросов
- Управление аутентификацией
Модель безопасности
Аутентификация
- Опциональная защита Basic Auth
- Настраиваемые учетные данные
- Отдельная аутентификация для метрик
Сетевая безопасность
- Только локальные SOCKS5 порты
- Отсутствие прямого доступа к прокси
- Настраиваемые параметры тайм-аута
- Поддержка TLS для отправки метрик
Безопасность конфигурации
- Поддержка переменных окружения
- Безопасная обработка учетных данных
- Защищенные конечные точки метрик
- Безопасная обработка конфигурации
Особенности производительности
Использование ресурсов
- Минимальное потребление памяти
- Эффективная проверка прокси
- Оптимизированный сбор метрик
- Контролируемая частота обновлений
Масштабируемость
- Поддержка множества прокси
- Параллельные проверки работоспособности
- Эффективная обработка метрик
- Поддержка распределенного мониторинга
Надежность
- Автоматическое восстановление
- Обработка ошибок
- Механизмы повторных попыток
- Плавная деградация