SHARP Anonymous Re-translator Protocol¶
да, это аббревиатура внутри аббревиатуры
Sharp — single-binary message queue для ShardNet. Обеспечивает скорость, надёжность и приватность коммуникации между шардами. Может использоваться как transport layer over TCP для любых данных (VOIP, игры, стриминг).
Написан на Rust с Tokio async runtime. Реализует publisher-subscriber паттерн с packet-based коммуникацией поверх TCP.
Текущие показатели: ~2.45 GB/s end-to-end pub-sub throughput (16KB сообщения, release build), с at-least-once delivery и ordering guarantees. Без WAL.
Разделы¶
- Быстрый старт — сборка, запуск сервера, примеры publisher и subscriber
- Архитектура — workspace, двухуровневая модель надёжности, поток данных
- Wire Protocol — packet, PacketType, data section, framing
- Сетевая подсистема — TCP deadlock, poll_fn цикл, NotifyChannel
- Сервер — конфигурация, sliding window, background tasks
- Publisher — API, публикация, retry, WAL
- Subscriber — API, получение сообщений, ack/nack
- Бенчмарк — CLI, режимы, вывод
- Производительность и оптимизации — fast_ack, zero-copy, антипаттерны
- Тестирование — структура, запуск, покрытие
- Roadmap — фазы разработки и открытые TODO
- Справочник — константы, карта файлов, зависимости