Recently in the research of distributed caching, I hope to be able to currently improve the use of the cache in the project. The results of this test may be unexpected.
comparison and analysis of test resultsSingle Read and write access memcached the fastest, Redis center, membase slowest, single read and write Membase and Redis speed is close, membase time is more than twice times of Redis; the larger the cached data block, the longer the single reads and writes, and the larger data blocks ( 100K) reading and writing, memcached compared to Redis and membase read and write speed advantage is very obvious, the average single time to read and write the time difference is nearly 20 times times and 40 times times; The user's view of response times and "the average response time for CDs" and "user per second read and write" and "total user is related; From the test data, the Memcached,redis and Membase cache access speed is not a bottleneck;
Test Purpose• Understand the effects of memcached, Redis, membase in the actual environment; • Analyze the read-write efficiency of three kinds of caching methods; • Analyze the concurrency capabilities that three caching methods can support;
Test ScenariosMemcached, Redis, membase use the default configuration, turn off Redis persistence and VM capabilities, limit total cache 1G (bytes), limited number (100) User concurrent access, buffer period, hit ratio 80%, three data lengths (1k,10k,100k), Consider data mashup; using the memcached 1.4.15 and libevent version 2.0.20, the client uses the Gwhalin 2.6.6 version; using Redis 2.4.17 version, the client uses the Jedis 2.1.0 version; Use Membase 1.7.2 version, the client uses Couchbase version 1.0.3;
Test ScenarioSingle user access, test cache read and write ability, 100 users concurrent access, test cache read and write ability;
test Environment DescriptionServer Software version: CentOS release 5.5 (Final) cpu:4 kernel 64-bit Intel (R) Xeon (TM) CPU 3.60GHz; memory: 8G; same server, same client software, test data exactly the same.
|
|
|
|
|
|
|
|
|
|
|
test Result Data
Write data time consuming (data length) |
Memcached |
Redis |
Membase |
|
Memcached |
Redis |
Membase |
|
|
|
1.4.15 |
2.4.17 |
1.7.2 |
|
1.4.15 |
2.4.17 |
1.7.2 |
|
|
|
1K |
1M, |
1M, |
1M, |
|
|
|
|
|
|
|
57888 |
59747 |
52835 |
1024 |
17.68933112 |
17.13893585 |
19.38109208 |
Amount of data written per second, in units: MB/s |
56531 |
58347 |
51596 |
1,024,000 |
17689.33112 |
17138.93585 |
19381.09208 |
Number of requests per write, units: Times/sec |
10K |
100K, |
100K, |
100K, |
|
|
|
|
|
|
|
14813 |
16254 |
18489 |
1024 |
69.12846824 |
62.99987695 |
55.38428255 |
Amount of data written per second, in units: MB/s |
144659 |
158732 |
180560 |
102,400 |
6912.846824 |
6299.987695 |
5538.428255 |
Number of requests per write, units: Times/sec |
100K |
10K, |
10K, |
10K, |
|
|
|
|
|
|
|
8513 |
9347 |
33320 |
1024 |
120.2866205 |
109.5538676 |
30.73229292 |
Amount of data written per second, in units: MB/s |
831411 |
912862 |
3253991 |
10,240 |
1202.866205 |
1095.538676 |
307.3229292 |
Number of requests per write, units: Times/sec |
10~100k (mix and match) |
100K, |
100K, |
100K, |
|
|
|
|
|
|
|
60743 |
36703 |
127295 |
1024 |
16.85790955 |
27.89962673 |
8.044306532 |
Amount of data written per second, in units: MB/s |
593199 |
358435 |
1243120 |
102,400 |
1685.790955 |
2789.962673 |
804.4306532 |
Number of requests per write, units: Times/sec |
Create 1G cached data. Number of entries, total response time, average operation response time |
|
|
|
|
|
|
|
Random Read data time consuming (data length) |
memcached |
redis |
membase |
|
memcached |
redis |
membase |
|
|
|
1.4.15 |
2. 4.17 |
1.7.2 |
|
1.4.15 |
2.4.17 | td> 1.7.2
|
|
|
1k |
1m, |
1m, |
1M, |
|
|
&NB SP; |
|
|
|
|
52375 |
52459 |
127402 |
1024 |
|