minor: про Python

This commit is contained in:
2026-06-22 23:15:10 +03:00
parent 7c44be83ac
commit 25667d4730

50
python/README.md Normal file
View File

@@ -0,0 +1,50 @@
# Python решения
Эта папка зарезервирована для Python реализации решений, но в данном проекте основной фокус на bash-утилиты для диагностики и тестирования сетевого доступа.
## Почему только bash?
Задача этого проекта — быстрая и портативная диагностика:
- Сравнение методов доступа к GitHub репозиторию (HTTPS, SSH, GitHub CLI)
- Измерение скорости загрузки между разными серверами
- Демонстрация влияния HTTP-сжатия на скорость передачи
Для этих задач bash-скрипты идеальны:
- Не требуют установки зависимостей (только `curl`, `bc`)
- Работают на любой Unix-системе out of the box
- Быстрая диагностика и отладка
### Почему не Python?
Любое Python решение в итоге:
1. **Использует `curl` через обертку** (типа `plumbum`, `subprocess`) — тогда это просто Python-обертка над bash
2. или портебует **Реализации собственного HTTP-клиена**, что уже никак не будет "быстрым решением" и, вдобавок, потеряется функциональность:
- HTTPS с самоподписанными сертификатами
- SFTP, WebDAV, SMB и другие протоколы
- Пулинг соединений, redirect handling
- Прокси, cookies, headers, auth методы
Python-библиотеки (`requests`, `httpx`) хороши для приложений, но для простой диагностики они избыточны и требуют:
- Установку пакетов (`pip`, `poetry` и т.п.)
- Управление версиями зависимостей
- Дополнительный код для разбора результатов
- дополнительные 120-240 мс на каждый запрос из-за интерпретатора Python, что критично для замеров скорости
**Вывод:** Bash + `curl` = минимум зависимостей + максимум функциональности + прямой доступ к инструментам системы.
## Мой Python код
Если вас интересуют примеры моего Python кода, смотрите другие репозитории:
- [GitHub профиль](https://github.com/erjemin)
- [Селфхостед Gitea](https://git.cube2.ru/erjemin)
## Содержимое проекта
```
├── bash/ # Bash утилиты и скрипты
│ ├── speed_test.sh # Измерение скорости интернета
│ ├── compare_modes.sh # Сравнение методов доступа к GitHub
│ ├── compare_servers.sh # Сравнение скорости серверов
│ └── USAGE.md # Документация
└── python/ # Зарезервировано для будущих решений
```