📢📢📢📣📣📣
哈喽!大家好,我是【 Bug 终结者】 ,【CSDN新星创作者】🏆,阿里云技术博主🏆,51CTO人气博主🏆,INfoQ写作专家🏆 <br/>
一位上进心十足,拥有极强学习力的【 Java领域博主】😜😜😜 <br/>
🏅【Bug 终结者】博客的领域是【面向后端技术】的学习,未来会持续更新更多的【后端技术】以及【学习心得】。 偶尔会分享些前端基础知识,会更新实战项目,面向企业级开发应用!
🏅 如果有对【后端技术】、【前端领域】感兴趣的【小可爱】,欢迎关注【Bug 终结者】💞💞💞
❤️❤️❤️ 感谢各位大可爱小可爱! ❤️❤️❤️
@[TOC]
一、什么是Redis
redis是一个key-value 存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list( 链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些 数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis是一个NoSQL数据库
不仅仅是数据库!
二、Redis的优缺点
优点
- 读写性能非常好,Redis读的速度是 110000次/s ,写的速度是 81000次/s
- 支持数据持久化,AOF和RDB两种持久化方式
- 支持事务,事务是原子性的
- 数据结构丰富,支持多种数据结构(String、List、Set、Hash、ZSet、HyperLogLog、Bitmaps、Geospatial等)
- 支持主从复制、读写分离
缺点
- 数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。
- Redis 不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。
- 主机宕机前,无法完全将数据同步到从机,切换ip后会导致数据不一致问题,降低可用性
但优点还是大于缺点的,Redis是单线程的、基于key-value的,速度极快,可以提高系统的可用性,具有更好的高并发吞吐量能力~
三、阿里云服务器部署安装Redis
❇️在Linux服务器新建文件夹存放Redis
进入 /usr/local/,新建redis目录
mkdir redis
下载redis
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
解压刚刚下载的redis
tar -zvxf redis-5.0.7.tar.gz
查看目录文件
ll
输入命令编译文件
make
输入命令安装
make PREFIX=/usr/local/redi
此命令会生成启动文件
进入bin目录创建conf配置文件目录
cd bin
mkdir conf
将配置文件复制到bin目录内
cp /usr/local/redis/redis-5.0.7/redis.conf config/
进入bin目录启动redis
./redis-server # 启动服务
✅测试连接
启动客户端
./redis-cli # 启动客户端
连接成功!
四、关闭防火墙,配置Redis访问端口
⏰配置Redis
进入Redis安装目录
cd /usr/local/redis/redis-5.0.7/bin/config
打开配置文件
vim redis.conf
修改如下
保存并退出
esc
:wq
⏰关闭防火墙
查询80端口是否启动
firewall-cmd --query-port=80/tcp
可以看到,未启动
关闭Linux防火墙
systemctl status firewalld
⏰阿里云控制台添加6379接口访问
五、Spring Boot 整合 Redis
新建基于Maven管理的Spring Boot项目,整合Redis,实现远程连接阿里云服务器测试!
♻️项目结构
导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
⛽核心源码
测试类
package com.wanshi.test;
import com.wanshi.MainApplication;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = MainApplication.class)
public class Test1 {
@Autowired
private StringRedisTemplate redisTemplate;
@Test
public void t1() {
redisTemplate.opsForValue().set("xiaowang", "hello");
String xiaowang = redisTemplate.opsForValue().get("xiaowang");
System.out.println(xiaowang);
}
}
✳️测试结果
执行结果
♨️往期精彩热文回顾
✈️ **[3分钟带你搞懂Vue双向绑定原理及问题剖析
](https://blog.csdn.net/weixin_45526437/article/details/123524699)**
✈️ **[Netty进阶 -- WebSocket长连接开发
](https://blog.csdn.net/weixin_45526437/article/details/123351605?spm=1001.2014.3001.5502)**
✈️ **[Netty进阶 -- 非阻塞网络编程 实现群聊+私聊+心跳检测系统
](https://blog.csdn.net/weixin_45526437/article/details/123197281?spm=1001.2014.3001.5502)**
✈️ **[Postman测试工具调试接口详细教程【向后端发送Json数据并接收返回的Json结果】
](https://blog.csdn.net/weixin_45526437/article/details/121317623)**
✈️ **[Java面向对象 --- 吃货联盟订餐系统(完整版)
](https://blog.csdn.net/weixin_45526437/article/details/114370404)**
✈️ **[一分钟教你快速 搭建Vue脚手架(Vue-Cli)项目并整合ElementUI
](https://blog.csdn.net/weixin_45526437/article/details/123247055?spm=1001.2014.3001.5502)**
⛵小结
以上就是【Bug 终结者】对阿里云服务器部署Reids并整合Spring Boot简单的概述,Redis是一个NoSQL非关系型数据库,性能非常好,读写速度秒杀所有数据库,可以说是性能最好的数据库,Redis支持主从复制,缓存,底层采用key-value形式存储数据,速度非常快,性能很好,推荐使用,目前大部分企业都在使用Redis!
如果这篇【文章】有帮助到你,希望可以给【 Bug 终结者】点个赞👍,创作不易,如果有对【 后端技术】、【 前端领域】感兴趣的小可爱,也欢迎关注❤️❤️❤️ 【 Bug 终结者】❤️❤️❤️,我将会给你带来巨大的【收获与惊喜】💝💝💝!