Skip to content

Roadmap

Phase 1 — Core Reliability (done)

  • Базовый pub/sub
  • Publisher retry task (100ms check, 10s timeout)
  • Publisher NACK handling (immediate resend)
  • Server sliding window per subscriber
  • Server retry task (500ms check)
  • poll_fn connection loop (TCP deadlock prevention)
  • Zero-copy serialization
  • NotifyChannel
  • Peak: ~2.45 GB/s end-to-end

Phase 2 — Security & Production

  • TLS/mTLS (rustls или native-tls)
  • Certificate-based authentication
  • ACL для очередей (кто может писать/читать)
  • Configuration system (TOML/YAML, env vars, CLI overrides)
  • Structured logging (tracing)
  • Prometheus metrics

Phase 3 — Advanced Features

  • Message persistence для Durable/Invulnerable на стороне сервера
  • Dead Letter Queue (сообщения после N retries)
  • Priority queues (High/Normal/Low)
  • Web dashboard для мониторинга
  • Request-Response pattern для RPC между shards

Phase 4 — Scale & Performance

  • Server clustering (gossip protocol или shared state)
  • Connection pooling на клиенте
  • UDP/realtime mode (без acks, для VOIP/games)
  • Compression (LZ4/zstd для больших сообщений)
  • Topic patterns с wildcards (shard.*, shard.1.events)

Открытые TODO в коде

Файл Описание
client/src/publisher.rs Address handling: принимать SocketAddr / impl ToSocketAddrs
client/src/publisher.rs Exponential backoff для retries
client/src/publisher.rs Max retry count перед ошибкой
server/src/lib.rs Dead Letter Queue при исчерпании retries