Recently focused on Ssdb, his feature is based on a file storage system so it supports large amounts of data without being constrained by memory constraints. From the test report on the official website, the performance is excellent and the Redis equivalent, So you can use him on behalf of Redis to handle the K-V data business. The idea is always good, but in reality it can be very bony.
To perform a simple performance test comparison of several reads for Redis and SSDB, this test does not call Redis and ssdb directly on the native machine. Instead, it is invoked on a different server through a program. Test instruction (Get,hget,lregion) The following is the test result
Test code
private void Hgethandler (Redisclient e) {while (mruning) {Long index = Syst Em. Threading.Interlocked.Increment (ref Mindex); Protobufkey key = "User_" + data.import.users[(int) (index% Data.Import.Users.Count)]. Name; Key. Get<model.order, Model.employee, model.customer> (e); System.Threading.Interlocked.Increment (ref MCount); }} private void Lregionhandler1to2 (Redisclient e) {while (mruning) { protobuflist<model.order> list = "Orders"; List. Range (1, 2, E); System.Threading.Interlocked.Increment (ref MCount); }} private void Lregionhandler50to60 (Redisclient e) {while (mruning) { protobuflist<model.order> list = "Orders"; List. Range (A, E); System.Threading.Interlocked.Increment (ref MCount); }} private void lregionhandler100to110 (Redisclient e) {while (mruning) { protobuflist<model.order> list = "Orders"; List. Range (+, E); System.Threading.Interlocked.Increment (ref MCount); }} private void GetHandler (Redisclient e) {while (mruning) { Long index = System.Threading.Interlocked.Increment (ref mindex); Protobufkey key = "User_" + data.import.users[(int) (index% Data.Import.Users.Count)]. Name; Key. Get<model.user> (e); System.Threading.Interlocked.Increment (ref MCount); } }
It seems that the gap between the test results is very obvious, not as good as the official website. Although SSDB is less efficient than Redis, its disk-based storage has the greatest advantage, after all, much of the business data exceeds the capacity of server memory.