Granian
Granian - быстрый HTTP-сервер на Rust для Python приложений, построенный на основе Hyper и Tokio. Основные причины, побудившие к созданию этого проекта, следующие необходимо иметь единую, корректную реализацию HTTP, поддерживающую версии 1, 2 (и в конечном…
Что это
Granian - быстрый HTTP-сервер на Rust для Python приложений, построенный на основе Hyper и Tokio.
Основные причины, побудившие к созданию этого проекта, следующие
необходимо иметь единую, корректную реализацию HTTP, поддерживающую версии 1, 2 (и в конечном итоге 3).
предоставить единый пакет для нескольких платформ.
избежать типичной для Unix-систем композиции зависимостей Gunicorn + uvicorn + http-tools.
обеспечить стабильную работу по сравнению с существующими альтернативами.
Возможности
- Поддержка приложений с интерфейсами ASGI/3, RSGI и WSGI;
- Протоколы HTTP/1 и HTTP/2;
- HTTPS и mTLS;
- Веб-сокеты;
- Прямая передача статических файлов;
- Расширение ASGI pathsend.
Зачем нужен
Это самостоятельный сервис, который можно развернуть в своей инфраструктуре и связать с уже используемыми системами. Такой подход даёт больше контроля над настройками и данными, но требует заранее продумать обновление, доступ и резервное копирование.
Когда пригодится
- Для ускорения повторяющихся действий во время разработки и отладки;
- Для более удобной работы с кодом, репозиториями или API;
- Для включения в локальный процесс разработки или CI/CD.
Что учесть
Перед внедрением Granian оцените требования к ресурсам, обновлению, резервному копированию, аутентификации и сетевому доступу. Начните с тестового окружения, зафиксируйте рабочую конфигурацию и только после этого переносите инструмент в постоянный процесс.