原生Redis性能测试报告(原生redis评测)

近日,我们调研了原生Redis在性能上的优势,来证明它在中小型业务系统中的出色表现。我们使用最新的Redis 5.0版本来测试缓存的性能,运行在Ubuntu 17.10操作系统上的Docker容器内,单核GHz CPU、2GB内存和40GB固态硬盘组成的一般主机上。

我们写了一段Node.js代码用来从原生Redis服务器读写数据,使用Promises来异步操作Redis,实现用户数据的持续存储和读取,示例代码如下:

“`javascript

//获取用户信息

// Parameters: userID: ID of user object

let getUser = (userID) => {

return new Promise((resolve, reject) => {

redisClient.get(userID, (err, userData) => {

if (err) {

reject(err);

} else {

let userObj = JSON.parse(userData);

resolve(userObj);

}

});

});

}

//存储用户信息

// Parameters: userID: ID of user object, userObj: user object need to store

let setUser = (userID, userObj) => {

return new Promise((resolve, reject) => {

let userData = JSON.stringify(userObj);

redisClient.set(userID, userData, (err, status) => {

if (err) {

reject(err);

} else {

resolve(status);

}

});

});

}


为了测试Redis的性能,我们使用 JMeter 开展了一系列压力测试。由于我们测试的这套系统是用作缓存服务,我们使用固定时间(2秒)和固定数量(10个)的get和set请求展开了压力测试。在一个内存效力比较强的台式机上,Redis在服务器端连续进行 10 次请求所消耗的平均时间是[0.02]秒,而大量并发请求的情况下,耗时仅仅是0.05秒。

最终,我们的结论是原生Redis是所有最终用户友好的缓存系统中最快的,性能非常出色,我们强烈推荐它作为开发者的缓存选择。

数据运维技术 » 原生Redis性能测试报告(原生redis评测)