Hi, folks,

We developed a reporter tool for memcached, which may be useful for
other memcached users.  Just wondering whether this would be a helpful
contribution, let me know if you feel so.

This tool, which we call Advanced Reporter, provides information about
the most active clients and object keys for memcached server.  It can
provide stats like:

- Hot keys - e.g. which keys are used the most often in certain
memcached servers.
- Hot clients - e.g. which clients (based on their IP and port)
accesses specific memcached servers most often.
- Hot clients on a per-key basis - e.g. which clients has accessed a
specific key the most.

We are using it to:

- Get a more detailed view of what is being stored on each memcached
server
- Understand and troubleshoot placement of keys and how they are being
used
- Understand client behavior, for example, how it may impact client-
side hashing etc.
- Understand on which servers where the most used keys are stored for
load balancing purposes

Advanced Reporter can also be used with Statsproxy (http://
dev.gear6.com/downloads/statsproxy), which provides a web view for the
stats provided.

Since the tool includes a TCP/UDP stream-level interceptor and a high-
speed collector inside kernel, it would require you to patch and re-
build your Linux kernel before you can use it.  The Linux kernel patch
is developed for Linux 2.6.18.8 but works on up to rev 2.6.24 with a
few minor modifications. And if you don't plan to support Network
Namespace feature in Kernel, the base code can work for Kernel up to
2.6.28.9. Kernels starting from 2.6.29 have changes on how TCP/UPD
open socks are organized, which would require data structure changes
in our base code. This is still on our TODO list.

We have used Advanced Reporter internally for a while but will release
the source to the community if there is interest.  Let me know if you
think this is something you'd be interested in ...

Best,
Haibin

Reply via email to