redis相关命令及应用场景
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相关命令及应用场景的更多相关文章
- Redis相关命令及Jedis的demo(转)
org.springframework.data.redis.core.RedisTemplate在List操作时的一个注意事项:BoundListOperations boundListOperat ...
- Redis相关命令
一.命令示例 1. KEYS/RENAME/DEL/EXISTS/MOVE/RENAMENX: #在Shell命令行下启动Redis客户端工具. /> redis-cli #清空当前选择的数据库 ...
- redis 相关命令
/etc/init.d/redis-serveredis-cli 进入redis/etc/init.d/redis-server stop /etc/init.d/redis-server start ...
- Redis中7种集合类型应用场景&redis常用命令
Redis常用数据类型 Redis最为常用的数据类型主要有以下五种: String Hash List Set Sorted set 在具体描述这几种数据类型之前,我们先通过一张图了解下Redis内部 ...
- redis五种数据类型和常用命令及适用场景
一.redis的5种数据类型: 1.基础理解: string 字符串(可以为整形.浮点型和字符串,统称为元素) list 列表(实现队列,元素不唯一,先入先出原则) set 集合(各不相同的元素) h ...
- Redis命令、数据结构场景、配置文件总结
本文大纲 一.常用数据类型简介二.redis操作命令三.redis配置文件详解四.redis数据类型使用场景 一.常用数据类型简介 redis常用五种数据类型:string,hash,list,set ...
- Redis集群维护、运营的相关命令与工具介绍
Redis集群的搭建.维护.运营的相关命令与工具介绍 一.概述 此教程主要介绍redis集群的搭建(Linux),集群命令的使用,redis-trib.rb工具的使用,此工具是ruby语言写的,用于集 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis的hash, list, set类型相关命令
hash相关命令: 1. hset HSET key field value 将哈希表key中的域field的值设为value.如果key不存在,一个新的哈希表被创建并进行hset操作.如果域fiel ...
随机推荐
- javascript中this的四种用法
javascript中this的四种用法 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2015-05-11我要评论 在javascript当中每一个function都是一个对象,所 ...
- Redis报错Can't save in background: fork: Cannot allocate memory及类似问题的处理方法
问题的发现及解决过程: 1.Redis主从复制(一主一从)环境在客户端用命令查看主从状态 在slave上输入命令显示如下: 在master上输入命令显示如下: 从显示可以看出主从关系出现问题,然后查看 ...
- Linux上centOs6+安装mysql5.7详细教程 - 前端小鱼塘
https://coyhom.github.io/ 人类的本质是复读机,作为一个非linux专业人员学习linux最好的办法是重复 环境centos6.5 版本5.7 1: 检测系统是否自带安装mys ...
- 基于USB接口芯片CH372的人机接口设备设计与实现(转)
摘 要: 基于一种新型USB 总线接口芯片CH372,设计出一种人机接口设备-USB 鼠标.阐述了CH372 的工作原理和特点,给出了系统的硬件电路图:在软件设计中,分析了HID 类设备描述符枚举过程 ...
- 使用python抓取汽车之家车型数据
import requests import pymysql HOSTNAME = '127.0.0.1' USERNAME = 'root' PASSWORD = 'zyndev' DATABASE ...
- Python——3条件判断和循环
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- Context与ApplicationContext的区别
ApplicationContext并没有这个类,其实更应该叫做:Activity与Application在作为Context时的区别.嗯,的确是这样的,大家在需要Context的时候,如果是在Act ...
- 树莓派3B安装OpenWrt打造超级路由器
网上有很多树莓派安装OpenWrt的教程,我这里写一下个人安装体验以及踩过的坑
- linux入门系列17--邮件系统之Postfix和Dovecot
前文演示了通过Samba和NFS实现文件共享,本篇演示使用Postfix和Dovecot在局域网实现电子邮件收发系统. 电子邮件系统是我们日常生活和工作中非常重要的一个网络服务,在windows下收发 ...
- 震惊,当我运行了这条Linux命令后,服务器竟然... (Linux中的删除命令)
震惊,当我运行了这条Linux命令后,服务器竟然... 0X00 写在前面 大家都听说过删库命令rm -rf /*,但是谁又真正实践过呢?但作为一个程序员,不看看这条命令执行后会发生什么,怎么能甘心呢 ...