From 25667d4730f7fdd101d0cda0e13e0d0434cf06fe Mon Sep 17 00:00:00 2001 From: erjemin Date: Mon, 22 Jun 2026 23:15:10 +0300 Subject: [PATCH] =?UTF-8?q?minor:=20=D0=BF=D1=80=D0=BE=20Python?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- python/README.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 python/README.md diff --git a/python/README.md b/python/README.md new file mode 100644 index 0000000..fd11e7d --- /dev/null +++ b/python/README.md @@ -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/ # Зарезервировано для будущих решений +```