试用Redis
Windows 10家庭中文版,运行于VirtualBox上的Ubuntu 18.04,Redis 4.0.10,
Redis,久仰大名!因为没有从事互联网行业,所以一直没有使用过。近期找工作,也隐约将其列入到了自己的学习计划之中,直到今天才第一次用了它。
在孤的认知中,Redis是一个缓存系统,可以存放一些数据,给应用提供快速查找的功能,而这个“快速”是针对的数据库操作来说的。为何这么快速?因为它的数据存放在内存中,而数据库是存放在磁盘上,所以,后者的操作会比前者慢。
快速是Redis(还有Memcached)等缓存软件的突出优势,但是,目前地球上内存超越GB的应该很少吧?除了超级计算机等——不熟悉,还请高人补充!因此,通常的应用场景是——Redis等软件做缓存,而MySQL等数据库软件做数据持久化存储,两者结合在一起——Redis等在前、MySQL等在后,一起为大数据量系统提供更好的服务——高效、完整、大并发、大数据量。
嗯,以上若有不对的地方,还请高人指点!
参考链接:
Redis官网:https://redis.io
RUNOOB的Redis教程:http://www.runoob.com/redis/redis-tutorial.html
使用Redis做MySQL的缓存:https://blog.csdn.net/songjianyue12345/article/details/78587053
打开Redis官网下载页面:https://redis.io/download,其中包含四个可下载版本——Stable(4.0)、Unstable、Beta(5.0)、Docker,孤选择了Stable版本。
页面往下,可以见到Installation小节,里面有Linux上安装、初步使用Redis的详细命令:四个命令,安装完成!
关于Redis在Windows上安装,不建议!Redis官方没有支持,仅仅推出了一个第三方软件,而这个也很久没有更新了,支持的Redis版本严重滞后!请参考官文Introduction最后一段:
下面是今日试用Redis的过程记录——安装、初步使用:
-下载(这是wget的方式,有些网友还介绍了sudo apt-get install的安装方式,两者存在一些区别)
-下载完毕,解压,进入解压后的目录:目录中的redis.conf是默认的配置文件——自己目前不熟悉
-使用make安装(make install也是可以的吧?)
-安装成功!非常简单!建议执行make test进行测试——后面会执行,结果是全部OK!
-Redis服务启动命令、客户端命令存在于src目录下,还有其它命令,但不熟悉。
-启动Redis服务
直接使用redis-server是不可以的,和安装方式有关系,当然,可以配置——怎么配置目前自己不清楚,需要dig;
使用./redis-server运行;
运行时没有其它参数,其实是可以添加的,比如自定义的配置文件,请参考默认配置文件及官文或其它资料;
-运行Redis客户端
无需参数,直接连接本机的Redis服务;
执行ping命令检查服务是否可用;
set一个键值对,get一个键的值;
vaccinum:疫苗;
-停止Redis服务:退出客户端后再次执行redis-cli命令,可以进入其命令行,但提示not connected;
-重启Redis服务,客户端再次登录,再次获取之前的键china的值,获取成功,没有丢失!
-执行make test检测Redis服务是否安装好;
执行前需要安装tcl;
-测试完成,全部通过!
Redis的Python接口:
官文Clients中有消息介绍:https://redis.io/clients
Python客户端模块,Redis官方加星星推荐redis-py。
Redis服务运行在虚拟机VirtualBox上的Ubuntu中,Windows主机的程序怎么访问呢?配置虚拟机的网络——自己目前对这个配置不是完全清楚,配置参考了某篇网友的博文!
-配置完毕后,获取了和Windows同一个网段的IP地址,此时,两者可以互通了;
注意,Ubuntu不能Ping通Windows,因为Windows禁止了,但测试表明,其可以访问Windows上的MongoDB服务器;
-Windows主机Ping虚拟机上Ubuntu的IP地址,可以Ping通,那么, 其上的Redis服务就可以被访问——待测试;
初步使用了SET/GET两个命令后,本想继续看官文深入学习的,可是,看了写选择暂时放弃……太低效了!很多可能看不懂!和自己现阶段目的不符合!于是,选择了RUNOOB教程,轻松, 愉快,几乎了解了怎么用Redis了,目前完成高级教程之外的部分,的确,一天的时间来讲,自己挺慢的,反省!
-来自RUNOOB的Redis教程的数据类型章节。
可是,自己在Redis官网还看到有Bit arrays、HyperLogLogs,为何如此?
-关于Redis的配置
见RUNOOB教程:http://www.runoob.com/redis/redis-conf.html
有一些,但一定不完善吧!但目前是够了!而且,即便这么少,自己也没有熟练掌握的啊!
下面是教程的部分截图,教程里面还有更多,不过,官文里面有更多。
好了,入门了吧!
接下来,进一步熟悉Redis,试用redis-py访问Redis服务。
问题:
Redis作为缓存软件使用,需要存储哪些数据呢?
Redis怎么和MySQL等数据库软件一起搭建后端数据存储系统呢?
Redis和Memcached的比较,两者的使用场景会有什么不同?
Redis还有一个发布/订阅功能,那么,和消息队列(MQ)软件相比又如何呢?
……
还有更多问题,让问题指引自己前进吧!
看一些先行者网友的博文也是挺不错的!
试用Redis的更多相关文章
- redis 的理解
1.Redis使用 C语言开发的.Redis 约定此版本号,为偶数的版本是稳定版(如:2.4版 2.6版),奇数版是非稳定版(如:2.5版 2.7版) 2.Redis 数据库中的所有的数据都存储在内存 ...
- 执行大量的Redis命令,担心效率问题?用Pipelining试试吧~
参考的优秀文章 Request/Response protocols and RTT 来源 原来,系统中一个树结构的数据来源是Redis,由于数据增多.业务复杂,查询速度并不快.究其原因,是单次查询的 ...
- [转载] Redis 起步
转载地址:http://www.cnblogs.com/shanyou/archive/2012/01/28/2330451.html Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在C ...
- redis的PHP扩展包安装方法
试用Redis安装.php环境连接.测试 Redis介绍 Redis本质上一个Key/Value数据库,与Memcached类似的NoSQL型数据库,但是他的数据可以持久化的保存在磁盘上,解 ...
- Redis 起步
Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在CentOS 5.7上学习入门文章: 1.Redis简介 Redis是一个key-value存储系统.和Memcached类似,但是解决 ...
- Redis起步
Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在CentOS 5.7上学习入门文章: 1.Redis简介 Redis是一个key-value存储系统.和Memcached类似,但是解决 ...
- Spring Boot使用redis做数据缓存
1 添加redis支持 在pom.xml中添加 <dependency> <groupId>org.springframework.boot</groupId> & ...
- Redis 缓存 + Spring 的集成示例(转)
<整合 spring 4(包括mvc.context.orm) + mybatis 3 示例>一文简要介绍了最新版本的 Spring MVC.IOC.MyBatis ORM 三者的整合以及 ...
- 基于redis的cas实现
cas是我们常用的一种解决并发问题的手段,小到CPU指令集,大到分布式存储,都能看到cas的影子.本文假定你已经充分理解一般的cas方案,如果你还不知道cas是什么,请自行百度 我们在进行关系型数据库 ...
随机推荐
- 洛谷 P4128 [SHOI2006]有色图 解题报告
P4128 [SHOI2006]有色图 题目描述 如果一张无向完全图(完全图就是任意两个不同的顶点之间有且仅有一条边相连)的每条边都被染成了一种颜色,我们就称这种图为有色图.如果两张有色图有相同数量的 ...
- 一次lvs迁移记录
需求:从117.119.33.99迁移到122.14.206.125,lvs为dr模式,系统版本为debian7 1.安装lvs和keepalived # aptitude install -y ip ...
- linux中的分段和分页
http://blog.csdn.net/hguisu/article/details/6152921 Linux 内存管理 觉得这篇文章写分段和分页机制还是挺清晰的,在此转载一下. 前一段时间看了& ...
- 单点登录(十七)----cas4.2.x登录mongodb验证方式成功后返回更多信息更多属性到客户端
我们在之前已经完成了cas4.2.x登录使用mongodb验证方式登录成功了.也解决了登录名中使用中文乱码的问题. 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方 ...
- JS的语法
1.语句和表达式 var a = 3 * 6; var b = a; b; 这里,3 * 6是一个表达式(结果为18).第二行的a也是一个表达式,第三行的b也是.表达式a和b的结果值都是18. var ...
- 洛谷P3201 [HNOI2009]梦幻布丁(链表 + 启发式合并)
题目链接 给出 \(n\) 个布丁,每个补丁都有其颜色.现在有 \(m\) 次操作,每次操作将第 \(x_i\) 种颜色全部变为第 \(y_i\) 种颜色. 操作中可能会插入询问,回答目前总共有多少段 ...
- tp5.1 高级查询之 表里2字段比较大小
$map = [ 'status' => 1, 'is_show' => 1,]; $result = Db::name('coupon') ->where($map) ->w ...
- python的dict()字典数据类型的方法详解以及案例使用
一.之前的回顾 # int 数字 # str 字符串 # list 列表 # tuple 元组 # dict 字典 字典中最重要的方法 keys() values() items() get upd ...
- Matlab修改背景颜色
步骤: 1, 在matlab命令行中运行prefdir, 获取matlab.prf文件所在路径 2, 打开matlab.prf所在路径, 找到matlab.prf文件, 作备份 3, 将以下内容添加到 ...
- 科学计算三维可视化---Mayavi入门(Mayavi库的基本元素和绘图实例)
一:Mayavi库的基本元素 .处理图形可视化和图形操作的mlab模块 .操作管线对象,窗口对象的api (一)mlab模块 (二)mayavi的api 二:快速绘图实例 (一)mlab.mesh的使 ...