一、什么是Redis?

Redis(Remote Dictionary Server ),即远程字典服务。

Redis是是现在最受欢迎的NoSQL数据库之一,是一种支持key-value等多种数据结构的存储系统。是一个开源的使用ANSI C语言编写,可用于缓存,事件发布或订阅,高速队列等场景。支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化。Redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用方便。市面上类似于Redis,同样是NoSQL型的数据库有很多,除了Redis,还有MemCache、Cassadra和MongoDB。

二、Redis具备的特点

相比于其他数据库类型,redis所具备的特点是非常明显的,如下:
* C/S通讯模型

  • 单进程单线程模型
  • 丰富的数据类型
  • 操作具有原子性
  • 持久化
  • 高并发读写
  • 支持lua脚本

三、Redis应用场景

众多语言都支持Redis,因为Redis交换数据快,非常的适合存储一些需要频繁调取的数据,从而节省内存开销,以达到提升速度的要求和节约服务器的开销。如:

  • 最常用的会话缓存
  • 支付消息队列
  • 活动排行榜或计数
  • 高频读、低频写````数据
  • 社交网络和实时系统。

三、Redis数据类型

  • String(字符串):Redis最基本的数据类型,一个键对应一个值,一个键值最大存储512MB
  • Hash(哈希):hash是一个键值对的集合,是一个String类型的field和value的映射表,适合用于存储对象。
  • List(列表):是redis的简单的字符串列表,按插入顺序排序的字符串元素集合, 基于双链表实现。
  • Set(集合):是String字符串类型的无序集合,与List类型最大的区别是:集合中的元素没有顺序, 且元素是唯一的。
  • ZSet(sorted set有序集合)是String类型的有序集合,也不可重复。有序集合中的每个元素都需要指定一个分数,根据分数对元素进行升序排序。

四、实际部署使用

我们将以实际来演示Redis部署使用。首先是选择版本号,本文选择的是5.0.10的版本

Redis官方下载:https://github.com/tporadowski/redis/releases

1-下载完成后进行解压,在解压文件夹内打开cmd窗口,

2-在cmd窗口下输入如下命令启动redis服务,结果如下图:

redis-server.exe redis.windows.conf

3-再到刚刚解压的文件夹内打开一个新的cmd窗口,输入如下代码,用于连接redis服务。

redis-cli.exe -h 127.0.0.1 -p 6379

然后我们设置一个新的值

set newkey ‘This is the redis clinet'

再读取这个值,能正常写入、读取,说明部署的resid就没问题了。

get newkey

在登录状态下对redis设置一个密码,至此 redis设置就完成了。

config set requirepass 123456

4-彩蛋:以下内容适用于把redis部署在服务器或模拟器上的操作。本机的只需按如上操作即可。

因为我的redis部署在虚拟机(模拟服务器),redis默认监听是本机的IP,如需局域网连接进去需要在redis.windows.conf文件内把bind 127.0.0.1用#注释掉(如下图),然后重启redis。如果开启防火墙还需要配置出入规则,否则还是无法连接的。

在如上配置完成后,本机也需要解压redis压缩包,然后在解压文件内打开cmd,通过下面命令去连接模拟器上的redis.

注:192.168.226.134是模拟器IP

redis-cli.exe -h 192.168.226.134 -p 6379

5-连上后或者当你尝试通过 get newKey 读取刚刚设置的值时,然后redis就送你一份大礼了,开头如下:

(error) DENIED Redis is running in protected mode because protected mode is……

这其实是redis的保护机制

这时候我们需要到模拟器(服务器)上在刚解压的redis,打开解压文件夹下的redis.windows.conf文件,把protected-mode yes用改为protected-mode no(如下图),然后重启redis。

当你操作以上步骤后,再次尝试去连接redis,并读取、写入数据时就会发现不再报错。

Redis安装及使用详解篇的更多相关文章

  1. Redis安装及使用详解

    推荐在Linux系统上安装,这里我采用CentOS6: Redis采用3.0.0版本,官网下载即可 由于Redis是C语言编写,需要安装gcc(部分Linux自带gcc) yum install gc ...

  2. (转)windows 下安装配置 Nginx 详解

    windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...

  3. 深入浅出DOM基础——《DOM探索之基础详解篇》学习笔记

    来源于:https://github.com/jawil/blog/issues/9 之前通过深入学习DOM的相关知识,看了慕课网DOM探索之基础详解篇这个视频(在最近看第三遍的时候,准备记录一点东西 ...

  4. redis.conf 具体配置详解

    redis.conf 具体配置详解 # redis 配置文件示例 # 当你需要为某个配置项指定内存大小的时候,必须要带上单位, # 通常的格式就是 1k 5gb 4m 等酱紫: # # 1k => ...

  5. redis.windows.conf配置详解

    redis.windows.conf配置详解 转自:https://www.cnblogs.com/kreo/p/4423362.html # redis 配置文件示例 # 当你需要为某个配置项指定内 ...

  6. MySQL 8.0.20 安装教程图文详解(windows 64位)

    MySQL 8.0.20 安装教程图文详解(windows 64位)  更新时间:2020年05月09日 15:09:04   转载 作者:瘦肉粥不加糖     这篇文章主要介绍了MySQL 8.0. ...

  7. MySQL8.0.20安装教程图文详解,MySQL8.0.20安装教程winodws10

    MySQL8.0.20安装教程图文详解,非常详细 一:mysql官网下载 https://dev.mysql.com/downloads/file/?id=494993 不用注册,直接下载就好 二:解 ...

  8. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  9. zookeeper的安装(图文详解。。。来点击哦!)

    zookeeper的安装(图文详解...来点击哦!) 一.服务器的配置 三台服务器: 192.168.83.133   sunshine 192.168.83.134   sunshineMin 19 ...

  10. 【转】JSch - Java实现的SFTP(文件下载详解篇)

    上一篇讲述了使用JSch实现文件上传的功能,这一篇主要讲述一下JSch实现文件下载的功能.并介绍一些SFTP的辅助方法,如cd,ls等.   同样,JSch的文件下载也支持三种传输模式:OVERWRI ...

随机推荐

  1. Python | __init__.py的神奇用法

    0._init_.py 在Python工程里,当python检测到一个目录下存在_init_.py文件时,python就会把它当成一个模块(module).Module跟C++的命名空间和Java的P ...

  2. 【每日一题】12.Running Median (对顶堆)

    补题链接:Here 题意:动态的维护中位数的问题,依次读入一个整数,每当总个数为奇数时输出此时序列的中位数 使用对顶堆的在线做法. 为了实时找到中位数,我们可以建议两个二叉堆:一个小根堆.一个大根堆. ...

  3. 3 分钟创建 Serverless Job 定时获取新闻热搜

    不用掏手机,不用登微博,借助 SAE 定时任务就可以实现每小时获取实时新闻热搜!SAE 场景体验火热开启中,参与还可领好礼! Job 作为一种运完即停的负载类型,在企业级开发中承载着丰富的使用场景.S ...

  4. proxy代理

  5. vue双向定位导航效果

    需求:实现双向定位导航效果,点击左侧菜单,右侧滚动到相应的位置.滚动右边,左侧相应菜单高亮. html代码: 1 <ul class="EntTake_main_left" ...

  6. Go ASM 学习笔记之 ppt 版

    在 小白学标准库之反射 reflect 篇中介绍了接口和反射.然而,对于接口的类型转换,底层实现还是一知半解.在参考 Go 语言设计与实现 这本书接口章节时,又看不大懂.一个拦路虎摆在面前:汇编.不懂 ...

  7. 基于html5开发的Win12网页版,抢先体验

    据 MSPoweruser 报道,Windows 11虽然刚刚开始步入正轨,但最新爆料称微软已经在开启下一个计划,Windows 12 的开发将在 去年3 月份开始.德国科技网站 Deskmodder ...

  8. 基于python开发的口罩供需平台

    基于python开发的口罩供需平台 预览地址:https://i.mypython.me 开发语言:python/django 意见反馈:net936艾特163.com

  9. Blazor开发小游戏?趁热打铁上!!!

    大家好,我是沙漠尽头的狼. 网站使用Blazor重构上线一天了,用Blazor开发是真便捷,空闲时间查查gpt和github,又上线一个 正则表达式在线验证工具 和几个在线小游戏,比如 井字棋游戏.扫 ...

  10. SpringBoot实现限流注解

    SpringBoot实现限流注解 在高并发系统中,保护系统的三种方式分别为:缓存,降级和限流. 限流的目的是通过对并发访问请求进行限速或者一个时间窗口内的的请求数量进行限速来保护系统,一旦达到限制速率 ...