Redis

Redis介绍:

(Redis)是一个基于 key-value 键值对的持久化数据库存储系统。支持多种数据结构,包括 string (字符串)、list (链表)、set (集合)、zset (sorted set --有序集合)和 hash(哈希类型)。这些数据类型都支持 push/pop、add/remove 及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。

第一部分:为什么要使用Redis

1.作为缓存使用,网站并发量大的情况下,很多人使用了这套解决方案,包括持久化数据的缓存,包括状态化数据的缓存。

2.排队使用,许多网站有秒杀、抢购的功能,这种功能即时性非常强,需要用高效的机制,发布库存的时候,可以把库存信息存在redis,这样用户购买后redis就减少,这样就不会造成短时间的阻塞。

3.异步通信,服务A作为生成者,服务B作为消费者,可以代替笨重的webservice或者http,高效的作为服务之间的通信。

4.日志记录,redis与logstash使用,处理了分布式日志系统问题。logstash的agent收集日志发送到redis,另外一台中央logstash从redis读取日志,集中处理

我知道有些地方没说到位,希望大神们提出来,我会吸取教训,大家共同进步!

第二部分:如何使用Redis

1.从官方下载Redis (官方下载只有linux版本的 https://redis.io/)并解压安装

编译: linux环境下进入redis目录执行make命令 进行编译

安装: 进入redis/bin 目录下执行make install 命令之心安装

修改自定义配置文件(重要) :redis目录下 redis.conf 文件 使用vi命令进行修改,小编修改了三个位置

bind 127.0.0.1 注释掉 redis默认只允许本机链接

daemonize设置为yes 默认是no yes用后台程序启动

requirepass 123456 设置密码你自己的密码

wq保存退出。

在redis安装目录 用redis-server 命令启动redis (这里是用我们刚才更改的redis.conf目录下的配置启动)。这里启动为redis后台程序启动。

如果没有更改该 daemonize 为yes 的话。启动的时候是在会看到redis启动图案的

启动成功后我们用安装在windows下redis可视化工具进行连接如图 (我是在windos安装一个linux虚拟机 ) 端口为默认的6379

redis默认会有15个数据库,当然工作中用不到这么多个。这里我们连接成功。

2 用springboott连接redis (springboot之前已初步讲过怎么用啦)

加入redis 包依赖

设置redis默认配置 这是application.propeties 文件 。我们没有作扫描配置。系统会自动去扫描

设置redis操作接口类

redis 操作接口类具体实现 (这里我只写了set 和get操作)

springboot项目启动类

整个项目结构

我们在浏览器上输入 保存

查看

linux下查看

window客户端工具查看

其实redis 相当于是基于key-value键值对 其中的key有五种类型。redis的读取和写入非常快。Nosql非关系型数据库当中还有一些 比如 MongoDB 等,他们各自有自己的优势和劣势。redis的 内存模型和存储机制 (Sapshot和AOF)都是它的一些优点。这篇分享只是redis的简单安装和集成springboot。redis具体使用业务场景有很多。具体就不一一介绍,虽然redis功能非常强大,当时它不可能取代关系型数据库,只能说关系型的数据的一种补足。

再次感谢大家! 学习是一种习惯,也是一种态度。

本文来自企鹅号 - 全球大搜罗媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏社区的朋友们

深入浅出 Nodejs( 三 ):Nodejs 核心模块机制

本篇教程关于Nodejs的核心模块机制,具体讲Nodejs核心模块的原理、C/C++扩展模块的原理、包、模块调用栈以及NPM。

6300
来自专栏小古哥的博客园

Vue入门

一、引入vue 方法一:下载vue.js,然后像引用jquery一样,在HTML中使用script标签引入 <script src="https://unpkg...

3688
来自专栏前端知识分享

Vue---从后台获取数据vue-resource的使用方法

  作为前端人员,在开发过程中,我们大多数情况都需要从后台请求数据,那么在vue中怎样从后台获取数据呢?接下来,我简单介绍一下vue-resource的使用方法...

891
来自专栏xingoo, 一个梦想做发明家的程序员

Log4j官方文档翻译(五、日志输出的方法)

日志类提供了很多方法用于处理日志活动,它不允许我们自己实例化一个logger,但是提供给我们两种静态方法获得logger对象: public static Lo...

1768
来自专栏V站

PHP网址缩短算法代码(修复PHP7.0问题)

每个网址用6个字符代替,(32^6) 最多可以拥有1,073,741,824个短网址。当然,你还可以记录更详细的信息,如访问记录,创建时间等。如果真不够用了,还...

1932
来自专栏大内老A

模拟在WCF中的应用

在《模拟(Impersonation)与委托(Delegation)》一文中,我们对模拟和委托这两个概念以及相关编程实现进行了详细说明。如果将模拟使用在WCF上...

1829
来自专栏逍遥剑客的游戏开发

Nebula3学习笔记(5): IO系统

1684
来自专栏我的博客

memcache和redis的区别

1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等 2、数据类型–Memcac...

3419
来自专栏极客慕白的成长之路

前端知识点总结 : Vue

作用:将表达式执行的结果 输出当调用元素的innerHTML中;还可以将数据绑定到视图。

321
来自专栏九彩拼盘的叨叨叨

远程调试手机页面工具:Weinre 介绍

Weinre(全称Web Inspector Remote)是一款的可以在电脑上远程调试手机页面的工具。

793

扫码关注云+社区