2、Redis入门介绍
1、什么是Redis
- Redis:
REmote DIctionary Server
(远程字典服务器)- 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行。并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一, 也被人们称为数据结构服务器
- Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
- Redis不仅仅支持简单的
key-value
类型的数据,同时还提供list,set,zset,hash
等数据结构的存储 - Redis支持数据的备份,即
master-slave
模式的数据备份
2、Redis能干嘛
- 内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
- 取最新N个数据的操作,如:可以将最新的10条评论的ID放在List集合
- 模拟类似于HttpSession这种需要设定过期时间的功能
- 发布、订阅消息系统
定时器、计数器
- Redis 相关网址:
3、Redis的安装
- 下载地址
- Windows版安装-(了解即可,官网推荐Linux安装)
- 下载到的 Redis 支持 32bit 和 64bit 。根据自己实际情况选择,将 64bit 的内容 cp到自定义盘符安装目录取名redis。 如 C:\reids
- 打开一个cmd窗口 使用cd命令切换目录到 C:\redis 运行 redis-server.exe redis.conf 。
- 如果想方便的话,可以把redis的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个redis.conf可以省略,
如果省略,会启用默认的。输入之后,会显示如下界面:
- 这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了。
- 切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379 。
- 设置键值对 set myKey abc
- 取出键值对 get myKey
- Linux版本安装
- 安装前提: 安装之前需要安装
gcc
,所以安装之前请先确认自己是否安装了gcc
,gcc -v
- 解压下载
redis-3.2.3.tar.gz
到/opt
目录下 cd
到解压的目录redis-3.2.3
下make
命令进行安装- 然后执行
$sudo make install
/usr/local/bin
目录下看到redis
大片相关命令和文件,安装成功
- 安装前提: 安装之前需要安装
- 安装成功执行命令和出厂默认配置文件设置与调整
- 首先我们需要把 redis 安装目录中
redis.conf
拷贝出来,后面我本需要对配置文件学习-(注意: 不要轻易的对原配置文件修改),sudo cp redis.conf ~/myProfile/redis/
- 启动
redis
服务 和 客户端:
- 首先我们需要把 redis 安装目录中
4、Redis启动后杂项基础知识讲解
- Redis 是单进程:
- 单进程模型来处理客户端的请求。对读写等事件的响应是通过对
epoll
函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率 Epoll
是Linux
内核为处理大批量文件描述符而作了改进的epoll
,是Linux
下多路复用IO
接口select/poll
的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU
利用率。
- 单进程模型来处理客户端的请求。对读写等事件的响应是通过对
- Redis 的数据库: 默认16个数据库,类似数组下表从零开始,初始默认使用零号库
- 可以使用
Select
命令切换数据库 - Dbsize查看当前数据库的key的数量
Flushdb
:清空当前库Flushall
;通杀全部库- 统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上 (默认不需要密码)
- Redis索引都是从零开始
2、Redis入门介绍的更多相关文章
- Python 基于python操纵redis入门介绍
基于python操纵redis入门介绍 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作R ...
- Redis(二):Redis入门介绍
Redis入门介绍目录导航: 入门概述 VMWare + VMTools千里之行始于足下 Redis的安装 Redis启动后杂项基础知识讲解 入门概述 是什么 Redis:REmote DIction ...
- Redis学习二:Redis入门介绍
一.入门概述 1.是什么 Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内 ...
- 2.Redis 入门介绍
A)入门概述: 1.是什么: Redis:REmote Dlctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵循BSD协议,是一个高性能的(key/value) ...
- Redis入门(介绍、搭建)——Windows、Centos环境
一.介绍 Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cac ...
- NoSQL入门第二天——Redis入门介绍
一.基本概述 1.是什么 Redis:REmote DIctionary Server (远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议, 是一个高性能的(key/value)分布 ...
- Redis之Redis入门介绍
1.Redis概述 所谓Redis全称为REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value) ...
- Redis入门--进阶详解
Redis NoSql入门和概述 入门概述 互联网时代背景下大机遇,为什么用nosql 1.单机MySQL的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付,在那个时候, ...
- redis入门笔记(2)
redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...
随机推荐
- HTML常用标签总结
HTML 的常用标签总结 <font size="字体大小1-7" color="red或0xff00ff" face="字体类型(楷体等)&q ...
- 新手 gulp+ seajs 小demo
首先,不说废话,它的介绍和作者就不在多说了,网上一百度一大堆: 我在这里只是来写写我这2天抽空对seajs的了解并爬过的坑,和实现的一个小demo(纯属为了实现,高手请绕道); 一.环境工具及安装 1 ...
- SQL多表合并查询结果
两表合并查询,并同时展示及分页SELECT a.* FROM ( ( SELECT punycode, `domain`, 'Success' AS state, add_time, AS refun ...
- checkbox选中状态不被改变
让它的状态只能看不能改变,加上onclick="return false;". 也可以disabled="true";但是这个颜色变淡了; <input ...
- Unity3D UGUI之ScrollView弹簧效果
unity3d版本5.3.2p4 UGUI中ScrollView包含Viewport(Content) ScrollView包含脚本.其Movement Type一共3个选项.Elastic就是弹簧效 ...
- 第一章-第十三题(该游戏团队, 有很好的软件,但是商业模式和其他软件之外的因素有没有考虑到?)--By梁旭晖
这款软件无疑是一个好软件,软件的开发者是有相当水平的,可以说是优秀的软件编写人员,但是也只是优秀的软件人员,术业有专攻,他们在其他方面我觉得是有很大的欠缺的. 我觉得,他们并没有抓住消费者的心理,首先 ...
- js生成二维码 中间有logo
描述: jquery.qrcode.js 是一个能够在客户端生成矩阵二维码QRCode 的jquery插件 ,使用它可以很方便的在页面上生成二维条码.此插件是能够独立使用的,体积也比较 ...
- 【转】Web测试方法
看到好文章,拿过来给大家分享分享! 一.输入框 1.字符型输入框: (1)字符型输入框:英文全角.英文半角.数字.空或者空格.特殊字符“~!@#¥%……&*?[]{}”特别要注意单引号和&am ...
- Android5.1.1 - APK签名校验分析和修改源码绕过签名校验
Android5.1.1 - APK签名校验分析和修改源码绕过签名校验 作者:寻禹@阿里聚安全 APK签名校验分析 找到PackageParser类,该类在文件“frameworks/base/cor ...
- 搭建前端私有npm杂记
随着前端队伍越来越壮大,项目间共享代码就变得尤为重要.常用的框架/类库没必要在每个项目都放一份,团队内部产出的公共模块也需要有合理的共享机制.现在,用npm管理前端代码已经是业界趋势.楼主尝试用私有n ...