Memcached client

I’m continuing to build my networking ecoystem, as I’m hoping to replace all my existing C++ and Go code in AcoustID with Zig. One of the last pieces I needed was a memcached client, capable of consistent hashing, retries, etc.

There are still things to do, mainly I need to make the server pool dynamic based on DNS resolution. And ideally also use the maglev load balancing algorithm, as that’s what I currently use via Envoy. For now it uses a much simpler rendezvous hashing, which is technically just fine for my use case.

I’d very much like to use std.Io for these clients in the future, but I really need better timeout on the interface before I can do that.

3 Likes