HttpSession¶
- class HttpSession(timeout)¶
- Параметры:
timeout – Таймаут запросов в секундах
HTTP-клиент с поддержкой только POST запросов.
Принцип работы:
Легковесный HTTP-клиент на Rust, оптимизированный для работы с ClickHouse. Использует пул соединений, повторное использование сокетов и асинхронный I/O для максимальной производительности при передаче больших объемов данных.
Ключевые методы:
post()- отправка POST запроса с различными типами данныхpost_stream()- алиас дляpost()close()- закрытие сессии и освобождение ресурсов
Особенности реализации на Rust:
Асинхронный runtime (tokio) для конкурентных запросов
Connection pooling для многократного использования соединений
Поддержка streaming upload для генераторов данных
Автоматические retry при сетевых ошибках
Компрессия на лету (gzip, deflate)
Поддерживаемые типы данных:
bytes- готовые данныеbytearray- изменяемый буферIterable[bytes]- генераторы и итераторыlist[bytes]- список чанков
Использование: Для всех HTTP взаимодействий с ClickHouse сервером.