Commit 92c6a68
committed
feat(queue): add first-class Queue API with FFI/gRPC dual-mode support
- Add PriorityQueue with ordered-key queue entries (priority + ready_ts + sequence)
- Implement abstract QueueBackend interface with FFI, gRPC, and InMemory backends
- Add QueueTransaction for atomic claim protocol with visibility timeout
- Implement StreamingTopK for O(N log K) top-K selection
- Add factory methods: from_database(), from_client(), from_backend(), create_queue()
- Include QueueKey with big-endian encoding for lexicographic scan ordering
- Add Task model with claim/ack/nack/dead-letter support
- Add comprehensive test suite (31 tests)
- Add queue_benchmark.py for performance verification
Performance metrics:
- QueueKey encode/decode: ~411K ops/s
- Enqueue: ~31-83K ops/s
- Dequeue+Ack: ~1K ops/s
- StreamingTopK (n=10K, k=10): ~212 ops/s1 parent 882f0ad commit 92c6a68
4 files changed
Lines changed: 2499 additions & 0 deletions
0 commit comments