Skip to content

Instantly share code, notes, and snippets.

@alphazero
Created November 6, 2009 01:12
Show Gist options
  • Save alphazero/227585 to your computer and use it in GitHub Desktop.
Save alphazero/227585 to your computer and use it in GitHub Desktop.
Comparative runs using the redis-benchmark as a reference point (but its apples and oranges).
Using a single thread to continuously pipeline 10000 commands and then wait for completion of the last request. Repeat and keep running average.
Using jvm flags: -server -Xms512m -Xmx1536m
using connection spec: SocketProperty.SO_RCVBUF, 1024*256
Snippets of redis-benchmark output interspersed with JRedisPipeline stats. Pipeline response times for fire and forget are obviously better.
====== SET ======
10031 requests completed in 0.33 seconds
50 parallel clients
3 bytes payload
keep alive: 1
30305.14 requests per second
JRedisPipeline:
10000 SETs average response time @ 0.086 seconds
116279.07 requests per second
====== GET ======
10000 requests completed in 0.34 seconds
50 parallel clients
3 bytes payload
keep alive: 1
29673.59 requests per second
JRedisPipeline:
10000 GETs average response time @ 0.072 seconds
138888.89 requests per second
====== INCR ======
10007 requests completed in 0.34 seconds
50 parallel clients
3 bytes payload
keep alive: 1
29090.12 requests per second
JRedisPipeline:
10000 INCRs average response time @ 0.070 seconds
142857.14 requests per second
====== LPUSH ======
10010 requests completed in 0.33 seconds
50 parallel clients
3 bytes payload
keep alive: 1
30425.53 requests per second
JRedisPipeline:
10000 LPUSHs average response time @ 0.081 seconds
123456.79 requests per second
====== PING ======
10019 requests completed in 0.33 seconds
50 parallel clients
3 bytes payload
keep alive: 1
30452.89 requests per second
JRedisPipeline:
10000 PINGs average response time @ 0.064 seconds
156250.00 requests per second
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment