1. redis 数据类型
string, list, hash ,set,zset
2. redis 单线程模型
纯内存操作
使用IO多路复用技术
Redis采用单线程,那么它是如何处理多个客户端连接请求呢?
Redis采用了IO多路复用技术和非阻塞IO,这个技术由操作系统实现提供,Redis可以方便地操作系统的API即可。Redis可以在单线程中监听多个Socket的请求,在任意一个Socket可读/可写时,Redis去读取客户端请求,在内存中操作对应的数据,然后再写回到Socket中。
整个过程非常高效,Redis利用了IO多路复用技术的事件驱动模型,保证在监听多个Socket连接的情况下,只针对有活动的Socket采取反应非CPU 密集型任务
redis 任务大多都是非CPU 密集型任务,redis 性能瓶颈在内存和网络单线程优势
没有了多线程上下文切换的性能损耗
没有了访问共享资源加锁的性能损耗
https://baijiahao.baidu.com/s?id=1680204745179175857&wfr=spider&for=pc
3. 底层的数据结构
- 简单动态字符串
- 字典
- 链表
- 跳跃表
- 整数集合
- 压缩列表
- 对象
https://www.cnblogs.com/jaycekon/p/6227442.html