大家好大家好,首先还是先谢谢各位花费宝贵的时候翻阅我的文章,万分感谢。
这期写的是RabbitMQ的安装部署,下期会写在.Net Core中使用RabbitMQ和简易的封装。
1.什么是消息队列
MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。“消息队列”是在消息的传输过程中保存消息的容器。由于在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update之类的请求同时到达数据库,直接导致无数的行锁表锁,甚至最后请求会堆积过多,从而触发too many connections错误。通过使用消息队列,我们可以异步处理请求,从而缓解系统的压力。
2.什么是RabbitMQ
RabbitMQ是MQ的一种。
3.安装RabbitMQ
安装RabbitMQ有很多方式,比如上周介绍过的Docker容器技术。但是小编认为,想消息或者数据这种,放进容器总有些变扭,所以小编还是选择新开了一台虚拟机来搭建RabbitMQ。
PS:小编踩了很多坑,目前也只试成功了一种,大家别打我,我也想多介绍几种呀!
(1)先安装Erlang
开始
yum update -y //更新 要养成好习惯,这一部还是要做的
安装依赖文件
yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget
安装erlang 语言环境
wget http://www.erlang.org/download/otp_src_18.3.tar.gz //下载erlang包
tar -xzvf otp_src_18.3.tar.gz //解压
cd otp_src_18.3/ //切换到安装路径
./configure --prefix=/usr/local/erlang //生产安装配置
make && make install //编译安装
配置erlang环境变量
vi /etc/profile //在底部添加以下内容
#set erlang environment
ERL_HOME=/usr/local/erlang
PATH=$ERL_HOME/bin:$PATH
export ERL_HOME PATH
source /etc/profile //生效
测试一下是否安装成功,在控制台输入命令erl
erl //如果进入erlang的shell则证明安装成功,退出即可
(2)下载安装RabbitMQ:
下载安装
cd /usr/local //切换到计划安装RabbitMQ的目录,我这里放在/usr/local
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz //下载RabbitMQ安装包
xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
解压后多了个文件夹rabbitmq-server-3.6.1 ,重命名为rabbitmq以便记忆。
mv rabbitmq_server-3.6.1/ rabbitmq
配置rabbitmq环境变量
vi /etc/profile
#set rabbitmq environment
export PATH=$PATH:/usr/local/rabbitmq/sbin
source /etc/profile //生效
启动服务
rabbitmq-server -detached //启动rabbitmq,-detached代表后台守护进程方式启动,PS:可能会报错,但是无伤大雅
rabbitmqctl status
查看状态,出现下面截图表示安装成功,但是还不能用,继续看
配置网页插件
首先创建目录,否则可能报错
mkdir /etc/rabbitmq
然后启用插件
rabbitmq-plugins enable rabbitmq_management
配置防火墙
配置linux 端口 15672 网页管理 5672 AMQP端口
PS:这两个端口最好别改,是默认的,防火墙不能关!
firewall-cmd --permanent --add-port=15672/tcp
firewall-cmd --permanent --add-port=5672/tcp
systemctl restart firewalld.service
现在你在浏览器中输入服务器IP:15672 就可以看到RabbitMQ的WEB管理页面了,是不是很兴奋,可是你没有账号密码,别急。 默认的guest,外部是不能访问的,需要另外创建!!!!
配置访问账号密码和权限
rabbitmqctl add_user superrd superrd //添加用户,后面两个参数分别是用户名和密码,我这都用superrd了
rabbitmqctl set_permissions -p / superrd ".*" ".*" ".*" //添加权限
rabbitmqctl set_user_tags superrd administrator //修改用户角色
然后就可以访问了!
RabbitMQ的安装和部署就到这里了,但是还没有实际的用起来,下期我会带来.Net Core平台下的使用,和简单封装。
谢谢大家!

参考链接:https://blog.csdn.net/super_rd/article/details/70241007?utm_source=itdadao&utm_medium=referral
网友评论