云主机安装Redis,基于CodeArts模拟电商平台秒杀抢购

本文分享自华为云社区《云主机安装Redis并模拟电商平台秒杀抢购场景》,作者:开发者空间小蜜蜂。

1.1 案例介绍

Redis 是一个高性能的key-value数据库。Redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。因此Redis常用于缓存系统和队列系统。

本案例将指导开发者如何在云主机中安装和配置Redis,如何在Java项目中使用Jedis对接Redis服务器实现缓存功能并且使用CodeArts IDE模拟运行电商秒杀抢购场景。

1.2 免费领取云主机

如您还没有云主机,可点击链接,领取专属云主机后进行操作。

如您已领取云主机,可直接开始实验。

1.3 实验流程

  1. 在云主机上安装Redis并设置密码;

  2. 下载示例代码到云主机;

  3. 使用CodeArts IDE打开示例代码工程并修改Redis配置;

  4. 在CodeArts IDE上运行模拟测试文件查看结果。

1.4 实验资源

合计:0元

1.5 在云主机上安装Redis

进入云主机后,点击左面菜单的"终端"按钮,打开命令行工具。

在命令行中输入命令"sudo apt-get install redis-server"安装redis。

输入命令"sudo systemctl status redis-server" 确认redis已经安装并且服务正在运行。

确认安装好以后,键盘输入"ctrl+c"退出查看状态,接下来登录redis并测试数据的保存和获取,输入命令"redis-cli"登录到redis控制台,由于没有设置密码,所以可以直接登录。

登录后,使用set <key> <value>和get <key>命令实现数据的保存和获取,先输入"get city"查看city的值。

由于没有保存city的值所以是nil,现在输入命令"set city beijing"保存数据。

接下来再使用"get city"来查看city的值。

现在通过city这个key可以获取到beijing这个value值。

1.6 修改Redis配置,配置密码

安装好redis后,需要给redis服务器设置密码,先找到redis的配置文件,按照上面方式安装的redis,配置文件路径为/etc/redis/redis.conf,使用命令"sudo vim /etc/redis/redis.conf"打开并编辑配置文件,并找到"requirepass"这一行,把前面的注释符号"#"删除,并将"foobared"改成想要设置的密码。

然后输入":wq"命令保存文件,接下来使用命令"sudo systemctl restart redis-server"重启redis。

然后我们在使用命令"redis-cli"登录到redis控制台,并使用"get city"获取数据发现报错,提示我们认证失败。

因为我们已经设置了登录密码,所以现在需要使用密码登录,先输入"ctrl+c"退出控制台,再输入如下命令"redis-cli -h localhost -p 6379 -a <你的密码>"登录,再使用"get city",这次可以获取到数据。

1.7 下载示例代码

打开云主机的火狐浏览器,地址栏输入:https://codelabs.developer.huaweicloud.com/codelabs/samples/dac4adfa38db4e9d98734b1e5edebb5f/view-code/e95253901fca11ea8b68fa163e6e3ea0

打开示例代码页面,登录后点击下载按钮。

找到下载的代码压缩包,解压缩到当前目录。

打开云主机的CodeArts IDE,用IDE打开工程,选择项目代码。

打开工程后,稍等片刻,等待IDE加载java相关工具和项目适配。

1.8 修改代码对接Redis

打开"src\main\java\com\huaweicloud\dcs\DistributedLock.java"文件,修改HOST、PORT以及redis密码等配置信息:

  • HOST改为127.0.0.1

  • PORT改为6379,

  • 下面密码改成步骤2.2设置的密码即可

1.9 使用CodeArts IDE的调试功能模拟秒杀场景

首先添加IDE的运行配置,打开右上角配置的下拉菜单,点击"编辑配置"。

在弹出框内点击左上角的"+"添加配置项。

在新的菜单中选择"Java",在展开的菜单中选择"Launch Current File",点击"确定"。

接着就可以在菜单中选到新配置。

打开项目测试运行文件"CaseTest.java",运行配置选择"Launch Current File",点击右面的运行按钮,开始模拟测试。

可以在下面的控制台看到运行结果,实验结束。

相关推荐
驾驭人生9 小时前
Hangfire.Redis.StackExchange 已归档停更!生产任务卡死、重复执行、网络抖动问题解决方案
数据库·redis·缓存
TDengine (老段)11 小时前
TDengine Catalog 与元数据缓存
大数据·数据库·物联网·缓存·时序数据库·tdengine
吃饱了得干活13 小时前
Redis 不是死脑筋,它是一套“会进化”的存储系统
redis·后端
盟道科技13 小时前
小程序电商订单超时自动取消的三种实现方案:定时扫描、Redis 过期监听、延迟消息对比与生产落地
数据库·redis·小程序
夕除14 小时前
redis--011
redis
hui-梦苑14 小时前
[Gromacs]核心性能梯度测试:GROMACS 多线程性能调优实验
缓存·性能优化·多线程·gromacs·动力学模拟
Lyyaoo.16 小时前
【链表】【中等】两数相加/倒N删除/两个交换/排序链表/LRU缓存
数据结构·链表·缓存
努力努力再努力wz16 小时前
【Redis入门系列】:从 RESP 协议到 redis-plus-plus:Redis 客户端编程与 C++ 接口设计
开发语言·数据库·c++·redis·分布式·缓存·架构
JavaPub-rodert2 天前
Redis 和 MySQL 如何保证数据一致性?从业务方案到底层原理完整讲解
数据库·redis·mysql
OH_TPC2 天前
【鸿蒙优选三方库】@react-native-ohos/react-native-fast-image:高性能图片加载与缓存组件
缓存·华为·harmonyos·鸿蒙