Перейти к содержимому

Архитектура

Компоненты системы

Xray Checker состоит из нескольких ключевых компонентов, работающих вместе для обеспечения комплексного мониторинга прокси:

Основные компоненты

  1. Менеджер подписок

    • Обрабатывает получение конфигурации прокси
    • Поддерживает множество форматов источников
    • Управляет обновлениями конфигурации
    • Проверяет конфигурации прокси
  2. Интеграция с Xray Core

    • Управляет процессом Xray Core
    • Обрабатывает настройку прокси-соединений
    • Поддерживает SOCKS5 порты
    • Управляет обновлениями конфигурации
  3. Проверка прокси

    • Выполняет проверки работоспособности
    • Измеряет задержку
    • Проверяет функциональность прокси
    • Управляет расписанием проверок
  4. Система метрик

    • Собирает метрики производительности
    • Управляет интеграцией с Prometheus
    • Обрабатывает сохранение метрик
    • Поддерживает push gateway
  5. Веб-сервер

    • Предоставляет конечные точки статуса
    • Обслуживает веб-интерфейс
    • Обрабатывает API-запросы
    • Управляет аутентификацией

Детали компонентов

Менеджер подписок

Менеджер подписок отвечает за:

  • Получение конфигурации из URL подписок
  • Парсинг различных форматов конфигурации
  • Проверку конфигураций прокси
  • Запуск обновлений конфигурации

Интеграция с Xray Core

Обрабатывает все взаимодействия с Xray Core:

  • Управление жизненным циклом процесса Xray
  • Генерация конфигураций Xray
  • Поддержка SOCKS5 портов
  • Обработка настройки соединений

Проверка прокси

Выполняет фактическую проверку прокси:

  • Запланированные проверки работоспособности
  • Тестирование соединений
  • Измерение задержки
  • Отслеживание статуса

Система метрик

Управляет всей функциональностью, связанной с метриками:

  • Сбор метрик статуса прокси
  • Отслеживание метрик задержки
  • Управление интеграцией с Prometheus
  • Обработка отправки метрик

Веб-сервер

Предоставляет веб-интерфейс и API:

  • Обработка конечных точек статуса
  • Обслуживание веб-интерфейса
  • Обработка API-запросов
  • Управление аутентификацией

Модель безопасности

Аутентификация

  • Опциональная защита Basic Auth
  • Настраиваемые учетные данные
  • Отдельная аутентификация для метрик

Сетевая безопасность

  • Только локальные SOCKS5 порты
  • Отсутствие прямого доступа к прокси
  • Настраиваемые параметры тайм-аута
  • Поддержка TLS для отправки метрик

Безопасность конфигурации

  • Поддержка переменных окружения
  • Безопасная обработка учетных данных
  • Защищенные конечные точки метрик
  • Безопасная обработка конфигурации

Особенности производительности

Использование ресурсов

  • Минимальное потребление памяти
  • Эффективная проверка прокси
  • Оптимизированный сбор метрик
  • Контролируемая частота обновлений

Масштабируемость

  • Поддержка множества прокси
  • Параллельные проверки работоспособности
  • Эффективная обработка метрик
  • Поддержка распределенного мониторинга

Надежность

  • Автоматическое восстановление
  • Обработка ошибок
  • Механизмы повторных попыток
  • Плавная деградация