1.Redis
Redis为关系型数据库减轻负担的,将关系型数据库中的经常访问的且不会变的数据存储到Redis中,存在内存中,Redis是Key-Value存储的数据库
1.1安装并测试是否安装成功(下载百度了解一下)
打开cmd命令窗口,使用命令进行安装和注册redis到window服务
安装命令:redis-server.exe --service-install redis.windows.conf --loglevel verbose
启动服务命令:redis-server.exe --service-start
关闭服务命令:redis-server.exe --service-stop
1.2测试
我们重新打开一个cmd ,作为一个客户端调用redis服务,如下图所示,调用命令是:redis-cli.exe -h 127.0.0.1 -p 6379,如下图显示地址和端口,说明调用成功
然后我们使用set 和get 命令进行测试一下,set uname "abc",然后使用get uname可以获取到对应set的值,说明调用成功
2.RabbitMQ
rabbitmq,用于存储转发消息
RabbitMQ 是一中消息队列中间件,之前在面试过程中,有一道题:在一个秒杀活动中,如何保证一部分人可以秒到,一部分人秒杀失败,就是秒杀活动应该考虑些什么?
可能就会用到消息队列,需要考虑流量削峰,秒杀活动,一般流量较大,有可能会导致应用直接挂掉,一般会在应用前端加入消息队列。
1)可以控制活动的人数,超过一定的阈值的订单直接丢弃(这就是为啥我一直没有秒杀成功过的原因)
2)可以缓解短时间内高流量压垮应用(应用可以按照自己的最大处理能力来获取订单)
用户的请求,服务器收到之后,会先写入消息队列,加入消息队列长度超过最大值就会直接丢弃用户发送的请求或者跳转至错误页面
写入消息队列中的消息,再根据秒杀业务去做后续的处理
2.1下载安装erl和RabbitMQ
因为RabbitMQ是由erlang语言开发,下载RabbitMQ首先要erlang的环境搭建
官网下载非常慢,可以直接百度云下载
链接:https://pan.baidu.com/s/1fWdnkjm_-Va4YVhmu8TwKA
提取码:7bwb
下载之后双击exe,最后测试 输入erl
下载RabbitMq
链接:https://pan.baidu.com/s/1717puBwn7WUUlivUc8Fm-w
提取码:90dw
rabbitmq 安装过程中遇到的 rabbitmq-plugins不是内部命令或外部命令【https://www..com/article/7318912764/】
rabbit.bat server启动闪退,rabbitmq (ArgumentError) argument error,rabbitmq页面无法开启解决方案【https://blog.csdn.net/jiankang66/article/details/90384050】