redis学习基础《redis设计与实现》

1.特点

  1.C语言开发,性能出色,纯内存操作,每秒可处理超过10w读写(QPS)

  2.多种数据结构,单个最大限制可到1GB(memcached只支持字符串,最大1M)

  3.受物理内存限制,不能作海量数据的读写。适用于较小数据量的高性能操作和运算上。

  4.支持事务,持久化。

  5.单线程模型(memcached是多线程)

2.支持的数据类型

  1. Sring
  2. List
  3. Set
  4. SortedSet 与范围查询
  5. hash
  6. Bitmap
  7. Hyperloglogs
  8. Geospatial (Geos 地理空间)索引半径查询
  9. pub/sub
  10. Redis 内置了 复制(replication),LUA脚本(Lua scripting),LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

3.redis 比较快的理由

  • 纯内存操作,没有磁盘io
  • 单线程处理请求,没有线程切换开销和竞争条件,也不存在加锁问题
  • 多路复用模型epoll,非阻塞io(多路:多个网络连接;复用:复用同一个线程) 多路复用技术可以让单个线程高效的处理多个连接请求
  • 数据结构简单,对数据操作也简单。还做了自己的数据结构优化

猜你喜欢

转载自www.cnblogs.com/hanling/p/10155172.html