redis系列:redis介绍与安装
前言
这个redis系列的文章将会记录博主学习redis的过程。基本上现在的互联网公司都会用到redis,所以学习这门技术于你于我都是有帮助的。
博主在写这个系列是用的是目前最新版本4.0.10,虚拟机装的是4.0.10,为了方便window也安装了(版本3.2.100)。后续命令会采用命令行,jedis和spring集成jedis这三种方式进行操作。
在这片博文的开始,可以先试着问几个问题,带着问题看博文,或许能更有收获。
- 什么是redis?
- 为什么要使用redis?
- 如何搭建redis环境?
什么是redis?
Redis 是开源的(Github地址),采用BSD协议,C语言编写的、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。
它支持不同类型的value,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)、基数统计的算法 HyperLogLogs, 位图Bitmaps 。
这些数据的操作不仅仅有设置值和获取值方法,还支持更复杂的操作方式,例如交集、并集、差集等等。
为什么要使用redis
想要知道为什么要使用redis前,需要先知道为什么要用缓存。
为什么要用缓存
当一个应用的数据量或者用户量上来后,如果每一次的查询都去访问数据库,或造成数据库效率变慢甚至崩溃。
而且在大多数应用中都是读多写少的,就可以将这些经常读的数据放到另外一个地方去(也就是缓存),让系统先从这个地方(缓存)获取,获取不到在查询数据库。这样可以大大的减少数据库的压力。
有没有其他的缓存
有,经常与redis做比较的memcache,这里就不比较它们的区别了,有兴趣的可以自己搜索。
我们来看看redis的其它方面
redis特点
- Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
Redis 优势
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
如何搭建redis环境?
下载
window上的64位redis下载地址https://github.com/MicrosoftArchive/redis/releases
linux 官网地址: https://redis.io/download
目前官网首页提供的版本是4.0.10
Redis版本列表 :http://download.redis.io/releases/
window
将下载下来的文件解压或者安装,目录如下

双击redis-server.exe启动redis服务

双击redis-cli.exe启动redis客户端
linux
用linux命令wget
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
或者从官网下载,然后上传文件到linux上
解压
tar xzf redis-4.0.10.tar.gz
进入redis目录,编译
cd redis-4.0.10
make
启动服务
src/redis-server
或者进入src目录
./redis-server
想要后台启动最后加个&
src/redis-server &
这样启动的话,系统已重启又要重新启动redis服务
我们可以加到系统启动里面,让它开机自启动
注:出现问题 Could not connect to Redis at 127.0.0.1:6379: Connection refused
找到redis目录的redis.conf 文件
修改
daemonize no为daemonize yes,也就是将no改为yes,目的是开启守护线程模式,可以在后台运行
开启客户端
src/redis-cli
或者进入src目录
./redis-cli
在线测试 redis http://try.redis.io/
后续内容
命令介绍
- Cluster
- Connection
- Geo
- Hashes
- HyperLogLog
- Keys
- Lists
- Pub/Sub
- Scripting
- Server
- Sets
- Sorted Sets
- Streams
- Strings
- Transactions
redis事务
Redis的数据持久化
redis主从、哨兵、集群
等等
redis系列:redis介绍与安装的更多相关文章
- windows下mongodb基础玩法系列一介绍与安装
windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...
- redis 系列1 linux下安装说明
一. 安装环境 操作系统:centos 7 ,redis版本4.06,客户端windows 7 ,vs2015. 1.1 安装前的条件 yum -y install gcc-c++ 判断是否安装了gc ...
- Redis 实践1- redis介绍和安装
redis是一个key-value存储系统,官方站点 http://redis.io 和memcached类似,但支持数据持久化 支持更多value类型,除了和string外,还支持hash.li ...
- redis系列-redis的使用场景
redis越来越受大家欢迎,提升下速度,做下缓存,完成KPI之利器呀.翻译一篇文章<<How to take advantage of Redis just adding it to yo ...
- 初识Redis系列之二:安装及简单使用
仅介绍windows下的安装 一:下载地址:https://github.com/MSOpenTech/redis/releases. Redis 支持 32 位和 64 位.这个需要根据你系统平台的 ...
- redis系列-redis的持久化
redis对数据的持久化有两种方式:RDB(快照保存)和AOF(命令日志). RDB 介绍:将内存快照保存到磁盘,dump.rdb二进制文件 触发:满足“N 秒内数据集至少有 M 个改动”,或使用sa ...
- redis系列-redis的连接
Redis 是完全开源免费的,遵守BSD协议,先进的key - value持久化产品.它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list ...
- RabbitMQ系列随笔——介绍及安装
一.RabbitMQ介绍 RabbitMQ是由erlang开发的AMQP(Advanced Message Queuing Protocol)的开源实现.他是高级消息队列协议,是应用层协议的一个开放标 ...
- Redis系列---redis简介01
一. 本章我们将用简短的几句话来帮助你快速的了解什么是redis,初学者不必深究 1 Redis简介 Remote Dictionary Server(Redis)是一个开源的使用ANSI C语言编写 ...
- percona-toolkit系列之介绍和安装(mysql复制工具)
percona-toolkit使用教程(一) 一.percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统 ...
随机推荐
- RabbitMQ事务确认机制(生产者)
消息确认机制 生产者 消费者 消费者如何确保消息一定消费成功 队列和消费者建立长连接,推送或者拉取形式. 消费者通过自动应答或者手动应答,队列服务器等待应答结果,如果没有应答结果那么保留给下一个消费者 ...
- 在Delphi2007下安装ReportMachine6.5
如何在Delphi2007下安装ReportMachine6.5: 一.在安装ReportMachine6.5之前要安装如下组件: (1).llPdfLib3.6,用于导出PDF文件: (2).Ehl ...
- LINQ 学习路程 -- 查询操作 Quantifier Operators All Any Contain
Operator Description All 判断所有的元素是否满足条件 Any 判断存在一个元素满足条件 Contain 判断是否包含元素 IList<Student> studen ...
- UOJ278 【UTR #2】题目排列顺序
本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/转载请注明出处,侵权必究,保留最终解释权! 题目链接: http://uoj.ac/co ...
- java:Map借口及其子类HashMap五,identityHashMap子类
java:Map借口及其子类HashMap五,identityHashMap子类 了解:identityHashMap子类 一般情况下,标准的Map,是不会有重复的key值得value的,相同的key ...
- js事件绑定的几种方式与on()、bind()的区别
版权声明:本文为博主原创文章,未经博主允许不得转载 一直不是很理解几种js事件绑定之间的区别与联系,今天百度了一下,在此做一总结: 1.如果只是简单的绑定一个事件,可以直接写在行内,点击执行一个函数, ...
- [原]NYOJ-数的位数-69
大学生程序代写 /* NYOJ69 阶乘数位长度 http://acm.nyist.net/JudgeOnline/problem.php?pid=69 数的长度 时间限制:3000 ms | ...
- javascript:delete 删除对象的属性
delete 运算符删除对以前定义的对象属性或方法的引用. 不可以删除的如下: 1通过var定义的变量 var a=1;delete a//false 2 声明后的函数 function a(){}; ...
- TVYJ1266:费解的开关
我对状态空间的理解:https://www.cnblogs.com/AKMer/p/9622590.html 题目传送门:http://www.joyoi.cn/problem/tyvj-1266 这 ...
- python中文件打开的各个标识含义
w代表清空后写入 r代表打开后追查 +代表可以写 b代表二进制写入