Start at the socket.
Redis Bloom is a Redis-style in-memory database built from scratch in Go. The implementation spans RESP parsing, command execution, key expiration, sets, and sorted sets, alongside the TCP server that connects clients to those operations.
The project brings networking and data structures into the same implementation: an event-driven connection model on one side, and purpose-built structures for storing and querying data on the other.
One event loop. Two operating systems.
Use an event-driven TCP server
The server uses a single-threaded event loop, with Linux epoll and macOS kqueue. Its performance was compared locally against a goroutine-per-connection TCP baseline.
One connection model. Two approaches.
Local comparison implementation
epoll on Linux / kqueue on macOS
Platform-specific networking
The implementation uses operating-system-specific event notification APIs. The supplied material does not establish support beyond Linux and macOS, or provide production workload measurements.
Data structures with a job to do.
Sorted-set operations use a custom B+ tree. Bloom filters support approximate membership checks, while Count-Min Sketches estimate frequencies using MurmurHash3.
Measure the connection model.
higher throughput
Resume-reported local benchmark against a goroutine-per-connection TCP baseline. Hardware, request mix, concurrency, dataset size, and run count were not supplied.
lower average latency
Reported for the same local comparison. Average latency is not a tail-latency measure; p95 and p99 results were not supplied.
These are local comparison results, not a claim of superiority over Redis or a production capacity estimate. Benchmark scripts and raw output have not yet been verified. A reproducible report should record the environment, workload, baseline commit, and repeated measurements.
What to investigate next
A useful next step is a reproducible benchmark suite covering throughput, average and tail latency, and memory consumption across connection counts. This is proposed follow-up work, not a completed result.