13 KiB
13 KiB
MY Network v3.0 - Полная документация децентрализованной платформы
🎯 Обзор MY Network v3.0
MY Network v3.0 представляет собой полностью децентрализованную платформу дистрибьюции контента, где каждая нода принимает независимые решения о принятии и хранении контента без необходимости консенсуса или кворума.
📚 Структура документации
🏗️ Архитектурные документы
-
NEW_ARCHITECTURE.md - Основная архитектура v3.0
- Принципы децентрализации
- Замена кворумной системы
- Новая топология сети
- API для децентрализованной сети
-
NEW_PROTOCOL_V3.md - Протокол синхронизации v3.0
- Индивидуальные решения нод
- Система шифрования контента
- Новые типы P2P сообщений
- Алгоритм очистки контента
🛠️ Техническая документация
-
INSTALLATION_GUIDE.md - Установка и развертывание
- Автоматическая установка через start.sh
- Интерактивная настройка параметров
- SSL сертификаты и безопасность
- Docker развертывание
-
CONVERTER_MODULE.md - Converter и Docker интеграция
- On-demand конвертация файлов
- Интеграция с docker.sock
- Параллельная обработка
- API управления конвертацией
-
VERSIONING_COMPATIBILITY.md - Версионирование нод
- Семантическое версионирование
- Проверка совместимости
- Автоматические обновления
- Мониторинг версий в сети
📋 Аналитические документы
- tasks.txt - Анализ готовности функций
- Готовые компоненты (65%)
- Требующие доработки
- Новые функции для реализации
- План приоритетных задач
🚀 Ключевые изменения в v3.0
❌ Удаленные компоненты
- Кворумная система консенсуса - полностью удалена
- Голосование за принятие контента - заменено индивидуальными решениями
- Централизованное управление - отсутствует
- Обязательная репликация - заменена добровольной
✅ Новые возможности
- Автономность нод - каждая нода решает самостоятельно
- Устойчивость к цензуре - контент доступен пока есть хотя бы одна нода
- Гибкая фильтрация - настраиваемые правила на уровне ноды
- Приватные ноды - поддержка нод без входящих соединений
- Автоматическая установка - единый скрипт start.sh
- Версионная совместимость - контроль совместимости протоколов
🔐 Система безопасности v3.0
Шифрование контента
Контент -> AES-256-GCM шифрование -> Единый хэш на всех нодах
↓
encrypted_content_hash (поиск в сети)
↓
Отдельный preview_id (публичный доступ)
Принципы безопасности
- Симметричное шифрование - уникальный ключ для каждого контента
- Детерминированные хэши - одинаковые на всех нодах для поиска
- Изолированные preview - не связаны с основным контентом
- Контроль доступа - гибкая система разрешений
🌐 Архитектура сети
Типы нод
- Bootstrap ноды - точки входа в сеть
- Публичные ноды - принимают входящие соединения
- Приватные ноды - только исходящие соединения
- Seed ноды - с большим объемом контента
Протокол синхронизации
1. Анонс контента -> 2. Индивидуальное решение -> 3. Синхронизация
↓ ↓ ↓
всем пирам фильтры ноды прямая загрузка
📦 Установка одной командой
Быстрая установка
curl -fsSL https://raw.githubusercontent.com/your-org/my-uploader-bot/main/start.sh | bash
Что устанавливается
- ✅ Python, Docker, все зависимости
- ✅ PostgreSQL база данных
- ✅ Redis кэширование
- ✅ Converter module для медиа
- ✅ SSL сертификаты (опционально)
- ✅ Firewall и безопасность
- ✅ Мониторинг и логирование
🔧 Конфигурация
Основные параметры
# Тип ноды
NODE_TYPE=public|private|bootstrap
# Telegram интеграция
TELEGRAM_API_KEY=your_key
CLIENT_TELEGRAM_API_KEY=your_key
# Docker интеграция
DOCKER_SOCK_PATH=/var/run/docker.sock
# SSL настройки
SSL_ENABLED=true
DOMAIN=your-domain.com
# Фильтрация контента (заглушка)
CONTENT_FILTER_ENABLED=true
📊 API Endpoints v3.0
Управление нодой
GET /api/v3/node/status # Статус ноды
GET /api/v3/node/peers # Подключенные пиры
POST /api/v3/node/connect # Подключение к пиру
Синхронизация контента
POST /api/v3/sync/announce # Анонс контента
GET /api/v3/sync/pending # Ожидающие синхронизации
POST /api/v3/sync/accept/{hash} # Принять контент
Безопасность
GET /api/v3/content/{hash}/preview/{id} # Получение preview
POST /api/v3/content/{hash}/request-key # Запрос ключа
Мониторинг
GET /api/v3/network/stats # Статистика сети
GET /api/v3/system/version # Информация о версии
GET /api/v3/converter/active # Активные конвертации
🔄 Converter Module
On-Demand обработка
- Автоматический запуск контейнеров при необходимости
- Параллельная обработка до N файлов одновременно
- Автоудаление контейнеров после завершения
- Интеграция с docker.sock для управления контейнерами
Поддерживаемые форматы
- Видео → MP4 конвертация + thumbnail
- Аудио → MP3 конвертация + preview
- Изображения → resize + thumbnail
- Документы → preview + metadata
📈 Мониторинг
Веб-интерфейс
https://your-domain.com/api/my/monitor/
Ключевые метрики
- Сетевые соединения - количество пиров
- Синхронизация - статус и прогресс
- Контент - количество и распределение
- Производительность - CPU, память, диск
- Версии - совместимость в сети
🛡️ Безопасность
Уровни защиты
- Сетевая безопасность - firewall, SSL, rate limiting
- Контент безопасность - шифрование, контроль доступа
- Нода безопасность - версионная совместимость
- API безопасность - аутентификация, валидация
Автоматические меры
- SSL сертификаты через Let's Encrypt
- Fail2ban защита от брутфорса
- UFW firewall базовая защита
- Автообновления безопасности
🔄 Миграция с v2.x
Совместимость
- ✅ База данных - полная совместимость
- ✅ Контент - сохранение всех файлов
- ✅ API - обратная совместимость
- ❌ Протокол - требуется обновление
Процесс миграции
- Backup существующих данных
- Обновление кода до v3.0
- Миграция базы данных
- Настройка новых параметров
- Запуск в новом режиме
📋 Roadmap развития
Phase 1 (Текущая) - Основы v3.0
- Архитектура децентрализации
- Базовая система синхронизации
- Автоматическая установка
- Версионная совместимость
Phase 2 - Расширенная функциональность
- Реализация фильтров контента
- Продвинутый контроль доступа
- Региональные ограничения
- Коммерческие лицензии
Phase 3 - Оптимизация
- Производительность сети
- Улучшенная безопасность
- Расширенный мониторинг
- Автоматическое масштабирование
🤝 Участие в разработке
Структура проекта
my-uploader-bot/
├── app/ # Основное приложение
│ ├── core/ # Ядро системы
│ │ ├── my_network/ # MY Network v3.0
│ │ ├── content/ # Управление контентом
│ │ └── security/ # Безопасность
│ ├── api/ # REST API
│ └── scripts/ # Утилиты
├── converter-module/ # Модуль конвертации
├── web2-client/ # React фронтенд
├── docs/ # Документация v3.0
└── start.sh # Скрипт установки
Вклад в проект
- Fork репозитория
- Create feature branch
- Implement изменения
- Test функциональность
- Submit pull request
📞 Поддержка
Документация
- Архитектура: NEW_ARCHITECTURE.md
- Установка: INSTALLATION_GUIDE.md
- Протокол: NEW_PROTOCOL_V3.md
Команды управления
# Управление сервисом
systemctl start|stop|restart my-network
# Просмотр логов
journalctl -u my-network -f
docker-compose logs -f
# Мониторинг
curl https://your-domain.com/api/v3/network/stats
Диагностика
# Проверка статуса
curl http://localhost:15100/health
# Проверка подключений
curl http://localhost:15100/api/v3/node/peers
# Проверка синхронизации
curl http://localhost:15100/api/v3/sync/pending
🎉 Заключение
MY Network v3.0 представляет собой новое поколение децентрализованных платформ для дистрибьюции контента. Система обеспечивает:
- 🌐 Полную децентрализацию без единых точек отказа
- 🔒 Надежную безопасность с современным шифрованием
- 🚀 Простую установку одной командой
- 📈 Масштабируемость для любого количества нод
- 🛡️ Устойчивость к цензуре через множественные источники
MY Network v3.0 - Будущее децентрализованной дистрибьюции контента!
Документация MY Network v3.0 | 2025 | Версия 1.0