Redis的应用场景

(1)         配合关系型数据库做高速缓存

l  高频次,热门访问的数据,降低数据库IO

l  高频次,热门访问的数据,降低数据库IO

(2)         由于其拥有持久化能力,利用其多样的数据结构存储特定的数据

l  最新N个数据 è 通过List实现按自然事件排序的数据

l  排行榜,TopN è 利用zset(有序集合)

l  时效性的数据,比如手机验证码è Expire过期

l  计数器,秒杀 è 原子性,自增方法INCR、DECR

l  去除大量数据中的重复数据è 利用set集合

l  构建队列è利用list集合

l  发布订阅消息系统 è pub/sub模式

1)         Redis官方网站  http://Redis.io

2)         Redis中文官方网站  http://www.Redis.net.cn

安装步骤

1)         下载获得redis-3.2.5.tar.gz后将它放入我们的Linux目录/opt

2)         解压命令:tar -zxvf redis-3.2.5.tar.gz

3)         解压完成后进入目录:cd redis-3.2.5

4)         在redis-3.2.5目录下执行make命令

l  运行Make命令时出现错误,提示 gcc:命令未找到 ,原因是因为当前Linux环境中并没有安装gcc 与 g++ 的环境

5)         安装gcc与g++

l  能上网的情况:

yum install gcc

yum install gcc-c++

l  不能上网[建议]

参考Linux课程中<<03_在VM上安装CentOS7>>中的第40步骤

6)         重新进入到Redis的目录中执行 make distclean后再执行make 命令.

7)         执行完make后,可跳过Redis test步骤,直接执行 make install

查看默认安装目录 /usr/local/bin

1)         Redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何(服务启动起来后执行)

2)         Redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲

3)         Redis-check-dump:修复有问题的dump.rdb文件

4)         Redis-sentinel:Redis集群使用

5)         redis-server:Redis服务器启动命令

6)         redis-cli:客户端,操作入口

Redis的启动

1)         默认前台方式启动

l  直接执行redis-server 即可.启动后不能操作当前命令窗口

2)         推荐后台方式启动

l  拷贝一份redis.conf配置文件到其他目录,例如根目录下的myredis目录  /myredis

l  修改redis.conf文件中的一项配置 daemonize 将no 改为yes,代表后台启动

执行配置文件进行启动 执行 redis-server /myredis/redis.conf

客户端访问

1)         使用redis-cli 命令访问启动好的Redis

l  如果有多个Redis同时启动,则需指定端口号访问  redis-cli -p 端口号

测试验证,通过 ping 命令 查看是否 返回 PONG

Redis端口号的由来

端口号来自一位影星的名字 . Alessia Merz

Redis 默认16个库

1)         Redis默认创建16个库,每个库对应一个下标,从0开始.

通过客户端连接后默认进入到0 号库,推荐只使用0号库.

2)         使用命令 select 库的下标  来切换数据库,例如  select 8

Redis的单线程+多路IO复用技术

1)         多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)。

2)         Memcached 是 多线程 + 锁.

Redis 是 单线程 + 多路IO复用

redis相关命令及应用场景的更多相关文章

  1. Redis相关命令及Jedis的demo(转)

    org.springframework.data.redis.core.RedisTemplate在List操作时的一个注意事项:BoundListOperations boundListOperat ...

  2. Redis相关命令

    一.命令示例 1. KEYS/RENAME/DEL/EXISTS/MOVE/RENAMENX: #在Shell命令行下启动Redis客户端工具. /> redis-cli #清空当前选择的数据库 ...

  3. redis 相关命令

    /etc/init.d/redis-serveredis-cli 进入redis/etc/init.d/redis-server stop /etc/init.d/redis-server start ...

  4. Redis中7种集合类型应用场景&redis常用命令

    Redis常用数据类型 Redis最为常用的数据类型主要有以下五种: String Hash List Set Sorted set 在具体描述这几种数据类型之前,我们先通过一张图了解下Redis内部 ...

  5. redis五种数据类型和常用命令及适用场景

    一.redis的5种数据类型: 1.基础理解: string 字符串(可以为整形.浮点型和字符串,统称为元素) list 列表(实现队列,元素不唯一,先入先出原则) set 集合(各不相同的元素) h ...

  6. Redis命令、数据结构场景、配置文件总结

    本文大纲 一.常用数据类型简介二.redis操作命令三.redis配置文件详解四.redis数据类型使用场景 一.常用数据类型简介 redis常用五种数据类型:string,hash,list,set ...

  7. Redis集群维护、运营的相关命令与工具介绍

    Redis集群的搭建.维护.运营的相关命令与工具介绍 一.概述 此教程主要介绍redis集群的搭建(Linux),集群命令的使用,redis-trib.rb工具的使用,此工具是ruby语言写的,用于集 ...

  8. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

  9. redis的hash, list, set类型相关命令

    hash相关命令: 1. hset HSET key field value 将哈希表key中的域field的值设为value.如果key不存在,一个新的哈希表被创建并进行hset操作.如果域fiel ...

随机推荐

  1. 统一管理jar包版本

    <!-- 统一管理jar包版本 --> <properties> <spring.version>5.0.2.RELEASE</spring.version& ...

  2. Python---7函数(调用&定义函数)

    函数 Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs(),只有一个参数.可以直接从Python的官方网站查看文档: http: ...

  3. 【深圳·招聘】QQ音乐测试工程师-职位内推

    QQ音乐测试工程师 岗位职责 负责腾讯QQ音乐移动端/后台/web相关特性测试分析和执行,保障发布质量. 岗位要求 专业本科及以上学历,计算机/软件工程/信息管理/数学与应用数学/自动化/通信工程/电 ...

  4. ubuntu采用apt-get安装pure-ftpd

    apt-get install pure-ftpdcd /etc/pure-ftpd/auth #开启虚拟账户登陆;ln -s 60auth ../conf/PureDB 60auth #查看虚拟账户 ...

  5. 确认下眼神!有没有遇上对的工资(测试leader)

    屏蔽敏感信息,直接上图: ▼

  6. JavaWeb中遇到的字符编码问题

    一.常见的编码方式 1.UTF-8 2.ISO-8859-1 二.Tomcat的编码问题 Tomcat8和7的编码方式 Tomcat7对URI默认编码是ISO-8859-1 Tomcat8对URI默认 ...

  7. OpenGL的矩阵使用——绘制桌子

    其中最左边的桌子循环上移(即匀速上移到一定位置后回到原点继续匀速上移),中间的桌子不断旋转(即绕自身中间轴旋转),最右边的桌子循环缩小(即不断缩小到一定大小后回归原来大小继续缩小). 桌子的模型尺寸如 ...

  8. CSS过渡、动画及变形的基本属性与运用

    [逆战班] 动画可以让一个元素具有动态的效果,这个过程是使元素从一种样式变成另一个样式的过程.我们可以通过设置关键帧的方法来控制动画在某个时间节点的运动方式.通常设置多个节点来实现复杂的动画效果.0% ...

  9. 达拉草201771010105《面向对象程序设计(java)》第二周学习总结

    达拉草201771010105<面向对象程序设计(java)>第二周学习总结 一.理论知识学习部分          这一周我们学习的是书上第三章java的基本程序设计结构的内容,在这一章 ...

  10. datatables异步获取数据、简单实用

    IKC项目总结 一.认证难题管理模块 1. 如何使用datatables进行获取数据内容 datatables简介:Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何H ...