对于redis:
redis是内存数据库,数据保存在内存中,当然速度快。理论上,redis是单进程单线程模式,采用队列模式将并发访问转为串行访问,而这种模式不但没有影响它的性能,反而因为这样设计而变得更快
redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限,也可做持久化,但是内存空间有限,当数据量超过内存空间时,需扩充内存,但内存价格贵。因为redis主要操作内存数据,而且定位数据时采用hash定位,它在写入和查询时所以基本不消耗什么性能。
- 单个Redis实例的每秒读写能力为2W/s(redis官网测试读写能到10万)
- 读写同时进行时,写能力相对下降,可以维持在1W/s
get:
set:
set get 同时执行:
对于MySQL:
MySQL是关系型数据库,用于持久化的存储数据到硬盘,功能强大,但是速度较慢。
- 单个MySQL实例的每秒读能力5K/s、写能力为3K/s
- 写入操作通常比查询操作耗费更多时间和资源,包括读写同时进行,删除操作,一般读能力是写能力的两倍
查询:
修改:
理论如上,但是实际应用中读写能力并不固定,受内存,硬盘等硬件性能影响和网络影响数据库访问能力会有变动,但一般情况下redis数据访问量都是要远大于mysql。