redis-认识Redis

认识Redis.png

特性

速度快

速度快的原因归纳如下:
Redis的所有数据都是存在内存中
使用C语言实现
使用了单线程架构,预防了多线程可能产生的死锁

基于键值对的数据结构服务器

丰富的功能

  • 键过期功能
  • 发布订阅功能,可以用来实现消息系统
  • lua脚本消息
  • 事务
  • 流水线功能,这样客户端能将一批命令一次性传到Redis,减少了网络开销

简单稳定

  • redis的源码很少,所以建议看源码

客户端语言多

持久化

redis提供了两种持久机制
RDB
AOF

主从复制

高可用和分布式

Redis从2.8版本开始提供了高可用实现Redis Sentinel,它保证了Redis节点的故障发现和故障自动转移。
redis从3.0版本开始正式提供分布式实现Redis Cluster,它是Redis真正的分布式实现

使用场景

可以做什么

  • 缓存

  • Redis提供了键值过期时间设置,并且提供 了灵活的最大内存控制和内存溢出淘汰策略。

  • 排行榜系统

  • 计数器应用

  • 社交网络

  • 比如点赞、粉丝、共同好友、推送、下拉刷新等功能都可以使用Redis

  • 消息队列系统

不能做

redis不是万金油,有很多适合它解决的问题,但是也有很多不适合它的问题。
数据规模:大规模和小规模。因为redis是存放在内存中,如果是大规模的数据肯定是不行的
数据冷热:对于热数据(经常使用的数据)放在Redis可以减少数据库的负担,但是对于冷数据来说基本是对于内存的浪费

数据结构和内部编码

五种数据结构

  • string
  • hash
  • list
  • set
  • zset
  • 概要: 每种数据结构都有有自己的内部编码实现,而且是多种实现

内部编码

安装Redis

下载安装Redis指定版本的源码包

wget http://download.redis.io/releases/redis-5.0.0.tar.gz

解压Redis源码压缩包

tar xzf redis-5.0.0.tar.gz

建立一个redis目录的软连接,指向Redis源码版本

ln -s redis-5.0.0 redis

建立一个redis目录的软连接是为了不把redis目录固定在指定版本上,有利于版本的升级

进入Redis目录,编译

cd redis
make
编译之前确保操作系统安装了gcc

安装

make install

XMind: ZEN - Trial Version

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,016评论 2 89
  • 超强、超详细Redis入门教程 转载2017年03月04日 16:20:02 16916 转载自: http://...
    邵云涛阅读 17,502评论 3 313
  • 一:redis简介 redis是一个开源、遵守BSD协议的基于内存的数据结构存储系统,可用作数据库、缓存和消息代理...
    dreamguys阅读 523评论 0 0
  • 文章已经放到github上 ,如果对您有帮助 请给个star[https://github.com/qqxuanl...
    尼尔君阅读 2,290评论 0 22
  • 情人节快乐 体验了二十四年的单身生活,每年的此日,没有期待也不存失望。找个情人不如让自己成为个有情人。 欢喜一场,...
    叶二阅读 131评论 0 0