码迷,mamicode.com
首页 > 其他好文 > 详细

Redis原理/协议及使用

时间:2020-05-21 14:40:17      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:扩展   实现   hash   动态分配   列表   简单   二维   安全协议   二进制   

数据结构丰富

高性能

数据存储全内存

支持持久化

支持master-slave热备

支持事务

支持集群

单进程/线程

基于epoll 非阻塞网络io

 

数据类型

  1. string
    1. 二进制安全,动态扩容,提前动态分配,所需两边分配
  2. list
    1. 快速双向链表 lpush rpush lpop rpop 
  3. set
    1. dict 哈希表实现 查找 删除高效,好友列表,是否关注,好友推荐,来源业务,来源ip
  4. sorted set
    1. score 值排序,查找 删除高效,排行榜,学生成绩
  5. hash
    1. field-value 映射表 查询/修改高效,
  6. bitmap
    1. 连续二进制bit数组,最近n天登陆情况,属性标签,
  7. geo
    1. 二维经纬度->一维52bit整数编码(score)
  8. hypperloglog
    1. 计数统计,海量数据统计,稀疏矩阵,稠密矩阵(12kb)

协议分析

  1. RESP 二进制安全协议,实现简单,快速解析,方便阅读
  2. ping-pong
  3. pipeline
  4. pub/sub
  5. inline command
  6. arrays

系统架构

  1. 事件处理 aeEventloop
    1. io多路复用监听多个socket
      1. evport epoll kqueue select
    2. 时间事件
  2. 数据管理
    1. 支持多db
  3. 功能扩展
  4. 系统扩展

 

Redis原理/协议及使用

标签:扩展   实现   hash   动态分配   列表   简单   二维   安全协议   二进制   

原文地址:https://www.cnblogs.com/gaoqing502/p/12930466.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!