public abstract class JRedisBenchmark
extends java.lang.Object
SocketConnection, using a concurrent set of workers, each with its own
unique connection to the Redis server.| Modifier and Type | Class and Description |
|---|---|
static class |
JRedisBenchmark.Benchmarker |
class |
JRedisBenchmark.BenchmarkWorker
Abstract base class for all benchmark workers.
|
| Modifier and Type | Field and Description |
|---|---|
(package private) byte[] |
fixedbytes |
static java.lang.String |
password
password used to AUTH with redis select -- password is: jredis
|
protected boolean |
quitOnRunEnd |
(package private) static java.util.Random |
random |
(package private) static java.util.List<java.lang.String> |
stringList |
| Constructor and Description |
|---|
JRedisBenchmark() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract java.lang.Class<? extends JRedis> |
getImplementationClass() |
protected abstract JRedis |
newConnection(java.lang.String host,
int port,
int db,
java.lang.String password)
Define this method to test a specific JRedis implementation.
|
JRedisBenchmark.BenchmarkWorker |
newDbsizeWorker(java.lang.String host,
int port,
int db)
does the DBSIZE
|
JRedisBenchmark.BenchmarkWorker |
newDecrbyWorker(java.lang.String host,
int port,
int db)
does the DECR
|
JRedisBenchmark.BenchmarkWorker |
newDecrWorker(java.lang.String host,
int port,
int db)
does the DECR
|
JRedisBenchmark.BenchmarkWorker |
newGetWorker(java.lang.String host,
int port,
int db)
does the GET
|
JRedisBenchmark.BenchmarkWorker |
newIncrbyWorker(java.lang.String host,
int port,
int db)
does the INCRBY
|
JRedisBenchmark.BenchmarkWorker |
newIncrWorker(java.lang.String host,
int port,
int db)
does the INCR
|
JRedisBenchmark.BenchmarkWorker |
newLLenWorker(java.lang.String host,
int port,
int db)
does the LLEN
|
JRedisBenchmark.BenchmarkWorker |
newLPopWorker(java.lang.String host,
int port,
int db)
does the LPOP
|
JRedisBenchmark.BenchmarkWorker |
newLPushWorker(java.lang.String host,
int port,
int db)
does the LPUSH
|
JRedisBenchmark.BenchmarkWorker |
newPingWorker(java.lang.String host,
int port,
int db)
does the PING
|
JRedisBenchmark.BenchmarkWorker |
newRPopWorker(java.lang.String host,
int port,
int db)
does the RPOP
|
JRedisBenchmark.BenchmarkWorker |
newRPushWorker(java.lang.String host,
int port,
int db)
does the RPUSH
|
JRedisBenchmark.BenchmarkWorker |
newSaddWorker(java.lang.String host,
int port,
int db)
does the SADD
|
JRedisBenchmark.BenchmarkWorker |
newScardWorker(java.lang.String host,
int port,
int db)
does the SCARD
|
JRedisBenchmark.BenchmarkWorker |
newSetnxWorker(java.lang.String host,
int port,
int db)
does the SETNX
|
JRedisBenchmark.BenchmarkWorker |
newSetWorker(java.lang.String host,
int port,
int db)
does the SET
|
JRedisBenchmark.BenchmarkWorker |
newSmembersWorker(java.lang.String host,
int port,
int db)
does the SMEMBERS
|
JRedisBenchmark.BenchmarkWorker |
newSremWorker(java.lang.String host,
int port,
int db)
does the SREM
|
protected void |
quitOnRunEnd(boolean flag) |
protected void |
runBenchmarks(java.lang.String host,
int port,
int threadCnt,
int reqCnt,
int size,
int db)
Runs a set of command primitives test runs using concurrent clients.
|
public static final java.lang.String password
static final java.util.Random random
byte[] fixedbytes
static java.util.List<java.lang.String> stringList
protected boolean quitOnRunEnd
protected void quitOnRunEnd(boolean flag)
b - protected abstract java.lang.Class<? extends JRedis> getImplementationClass()
protected abstract JRedis newConnection(java.lang.String host, int port, int db, java.lang.String password) throws ClientRuntimeException
host - port - ClientRuntimeExceptionprotected final void runBenchmarks(java.lang.String host,
int port,
int threadCnt,
int reqCnt,
int size,
int db)
Be advised that this will FLUSH the db specified. Defaults to database at index 13: i.e. jredis.select(13).flushdb().
This bench will use AUTH to make sure you do not accidentally destroy important data
when runnign the benchmark. (If you don't have a password on your db, it can't be that important, right?)
Further note that this will use the password jredis so either
make sure the redis.conf requirepass is set appropriately or simply comment it out.
host - port - threadCnt - reqCnt - size - db - public final JRedisBenchmark.BenchmarkWorker newPingWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newDbsizeWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newSaddWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newSremWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newScardWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newLLenWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newLPopWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newRPopWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newLPushWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newRPushWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newIncrWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newDecrWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newIncrbyWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newDecrbyWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newSetWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newSetnxWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newGetWorker(java.lang.String host, int port, int db)
public final JRedisBenchmark.BenchmarkWorker newSmembersWorker(java.lang.String host, int port, int db)