亲宝软件园·资讯

展开

Redis整合Spring Boot

Bug 终结者 人气:0

一、什么是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是单线程的、基于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);
    }
}

✳️测试结果

执行结果:

总结

Redis是一个NoSQL非关系型数据库,性能非常好,读写速度秒杀所有数据库,可以说是性能最好的数据库,Redis支持主从复制,缓存,底层采用key-value形式存储数据,速度非常快,性能很好,推荐使用,目前大部分企业都在使用Redis!

加载全部内容

相关教程
猜你喜欢
用户评论