Skip to content

deepakverma/RedisClusterBenchmark

Repository files navigation

  cluster -h *.redis.cache.windows.net  -a password -s 127.0.0.1

  -m, --cbservermode     Run cluster-benchmark in server mode
  -h, --redishostname    Server Hostname
  -a, --redispassword    Redis Server password
  -p, --redisport        Redis Server port. Default 6379
  --nonssl               (Default: False) Use SSL connection
  -c, --clients          (Default: 1) Number of client connection to create
  -d, --datasize         (Default: 1024) Value size in bytes
  -w, --warmup           (Default: 5000) Warm up period before running the
                         tests
  --cbserver             cluster-benchmark server endpoint
  --cbport               (Default: 6400) cluster-benchmark server port
  -k, --keyprefix        (Default: __clusterbenchmark_test) Key prefix of the
                         keys this tool will be creating to perform operations
  -v, --verbose
  --help                 Display this help screen.

Measure throughput from a single VM

usage: cluster-benchmark.exe -h  *.redis.cache.windows.net -a <redis-password>

The tool would automatically detect if it's a cluster or a non-cluster cache. It would evenly distribute keys across shard and measure the cluster throughput

Measure Cluster throughput using multiple VMs

You could get CPU or network bound on a single client VM while trying to measure a cluster cache. To solve this, the tool can be run across multiple client VMs to aggregate the total throughput a cluster can provide. This is done by running a copy of the tool as server and then several copies of it can be run as client on multiple machines.

1. Create a Redis Cache with n shards

2. Create multiple IAAS VM's
     (Make sure IAAS VM size matches or is higher performant that Redis cache size, for example for a P4 Azure Redis Premium cache create a D4 IAAS VM)

3. Enable port 6400 on the IAAS Vm's
    (this is the default port that would be used by the tool to aggregate RPS data, you can use any other port as well)

4. On one of the IAAS Vm's run the tool in server mode
    for example on clustlerload.cloudapp.net VM you run
    cluster-benchmark.exe --cbservermode 

5. One each of the client VM's run the following command
   cluster-benchmark.exe -h  *.redis.cache.windows.net -a <redis-password> --cbserver clusterload.cloudapp.net

6. On the node where you were running the tool in server mode, it would output the aggregated RPS

 

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages