memslap

SYNOPSIS

memslap [options]

Load testing and benchmarking a server

DESCRIPTION

memslap is a load generation and benchmark tool for memcached(1) servers. It generates configurable workload such as threads, concurrencies, connections, run time, overwrite, miss rate, key size, value size, get/set proportion, expected throughput, and so on.

OPTIONS

-h|--help

Display help.

-V|--version

Display version.

-q|--quiet

Operate quietly.

-v|--verbose

Operate more verbosely.

-d|--debug

See -v|--verbose.

-s|--servers <list of servers>

Specify the list of servers as hostname[:port][,hostname[:port]...].

-n|--non-blocking

Enable non-blocking operations.

-N|--tcp-nodelay

Disable Nagle's algorithm.

-b|--binary

Enable binary protocol.

-B|--buffer

Buffer requests.

-u|--username <username>

Use username for SASL authentication.

-p|--password <password>

Use password for SASL authentication.

-H|--hash <algorithm>

Use algorithm as key hash algo. See memcached_behavior_t::MEMCACHED_BEHAVIOR_HASH.

-U|--udp

Enable UDP operation mode.

-R|--noreply

Enable the NOREPLY behavior for storage commands.

-F|--flush

Flush all servers prior test.

-t|--test <arg>

Test to perform (options: get, mget, set; default: get).

-c|--concurrency <num>

Concurrency (number of threads to start; default: 1).

-e|--execute-number <num>

Number of times to execute the tests (default: 10000).

-l|--initial-load <num>

Number of keys to load before executing tests (default: 10000).

ENVIRONMENT

MEMCACHED_SERVERS

Specify a list of servers.

NOTES

PROGRAM PREFIX

The prefix of this program is variable, i.e. it can be configured at build time.

Usually the client programs of libmemcached-awesome are prefixed with mem, like memcat or memcp.

It can be configured, though, to replace the prefix with something else like mc, in case of that, the client programs of libmemcached-awesome would be called mccat, mccp, etc. respectively.