6分钟

任务 5 项目部署并测试运行

任务目标

将编写好的代码通过 Maven 进行打包,并将打包好的 jar 包放入任务 2中能够连接到 Redis 实例的 CVM 实例中,并运行 jar 包,然后通过 CVM 实例公网就可以访问编写好的页面了。

任务步骤

1.将代码进行Maven打包,根据下图顺序进行操作

Maven打包

打包完成,将打包好的文件位置记录下来,下一步需要用到。

记录文件位置

2.上传 jar 包到 CVM 实例

将打包好的 jar 包上传到能够连接到 Redis 实例的 CVM 实例中,同时按下【Windows+R】键,打开 cmd 命令窗口,通过命令可以将我们的jar包传输到 CVM 实例相应的位置。

pscp 上一步打包好的jar包位置 CVM用户名@CVM公网地址:CVM实例目的位置

如本实验的命令为:

pscp H:\文档\定稿\springboot-redis\target\springboot-redis-0.0.1-SNAPSHOT.jar root@193.112.136.211:/data
上传jar包

这时我们可以在 CVM 实例中查看到我们传输的 jar 包。

查看jar包

3.通过命令在 CVM 实例环境通过 yum 源安装 JDK1.8

yum install java-1.8.0-openjdk* -y
yum源安装JDK1.8

4.修改配置信息

使用命令进入redis.conf文件,点击“i”进入编辑模式,找到“bind 127.0.0.1”这一行并将其注释掉,点击【ESC】退出编辑模式,点击【Shift】+【:】,输入“wq”保存并退出。

vim /etc/redis.conf
进入配置文件
修改配置信息

5.使用命令关闭防火墙且设置防火墙开机不自启

systemctl stop firewalld
关闭防火墙
systemctl disable firewalld
设置防火墙开机不自启

6.运行项目

项目启动,通过命令就可以后台运行我们的 jar 包了,此时代码部署完成。

nohup java -jar jar包路径 &

如本实验的命令为:

nohup java -jar /data/springboot-redis-0.0.1-SNAPSHOT.jar &
运行jar包

7.实验验证

首先,我们要证明当前云数据库 Redis 中没有缓存数据。因此我们在腾讯云控制台上登录云数据库 Redis 实例。

登录云数据库 Redis 实例

查看到当前云数据库 Redis 实例中 key 为零。(若不为零,需先在 CVM 上登录 Redis 数据库输入命令“flushdb”进行清零)

查看key信息
缓存清零

接着,通过部署的 CVM 实例的公网地址访问,示例代码中的地址为“CVM公网地址:8381/query/findAll”。

此处一定注意:为了比较两次查询数据的查询速度差异,来证明项目实现了二级缓存功能。我们在访问网址前先要点击【Fn+F12】键,选择【Network】选项,用来查看访问网址查询数据所用的时间。

网址
打开network控制台

网页显示查到的云数据库 MySQL 中的数据,这一万条商品信息数据正是我们在任务 3中创建库表后插入的数据。同时在 Network 控制台中,显示该加载过程进行了 1.75 秒。

查询数据页面

此时,我们刷新云数据库 Redis 实例页面,查看到 Redis 实例有一个 key,这个 key 中存放的正是刚才访问网址后缓存的数据集。

再次查看key信息
查看写请求

我们回到访问网址的浏览器上,与第一次访问的步骤相同,再次访问 CVM 实例的公网地址,并查看Network控制台的查询商品信息数据所用的时间,为 0.207 秒。

查询数据页面

从结果来看,本次查询数据的速度比第一次查询快了五倍以上。这就表明,我们的项目已实现在云服务器实例上,使用 Springboot 集成 Redis 实现对数据的二级缓存。