网站建设与管理和计算机网络技术,平台营销型网站,网络营销渠道策略包括,张家界做网站的人1. RabbitMQ介绍
1.1 RabbitMQ关键特性 异步消息传递#xff1a;允许应用程序在不直接进行网络调用的情况下交换消息。 可靠性#xff1a;支持消息持久化#xff0c;确保消息不会在系统故障时丢失。 灵活的路由#xff1a;支持多种路由选项#xff0c;包括直接、主题、…1. RabbitMQ介绍
1.1 RabbitMQ关键特性 异步消息传递允许应用程序在不直接进行网络调用的情况下交换消息。 可靠性支持消息持久化确保消息不会在系统故障时丢失。 灵活的路由支持多种路由选项包括直接、主题、扇出和头插交换机。 集群支持可以跨多个服务器运行以提高可用性和可伸缩性。 高可用性通过镜像队列和故障转移机制确保消息传递的高可用性。 多种协议支持支持 AMQP 0-9-1、0-8、0-10以及 STOMP、MQTT、HTTP 等。 多种语言客户端库提供多种编程语言的客户端库如 Java、.NET、Ruby、Python、PHP、JavaScript 等。 1.2 使用场景
解耦将生产者和消费者解耦使得它们可以独立地开发和部署。扩展性通过增加消费者的数量来处理更多的消息。弹性在消费者处理能力不足时消息可以排队等待处理。消息持久化确保消息不会因为系统故障而丢失。优先级消息支持不同优先级的消息使得重要消息可以优先处理。
1.3 与其他消息队列系统相比 与 Kafka 比较Kafka 更注重高吞吐量的消息处理适合用于大数据处理和日志聚合。而 RabbitMQ 提供了更丰富的消息路由功能和多种协议支持适合需要复杂路由和多协议支持的场景 。 与 RocketMQ 比较RocketMQ 也是高性能的分布式消息队列但它更注重于延时消息和大规模消息处理。RabbitMQ 的社区支持和成熟度较高适用于多种消息传递场景 。 与 ActiveMQ 比较ActiveMQ 是 Apache 下的消息队列与 RabbitMQ 相比ActiveMQ 的社区活跃度和成熟度较低但也是一个稳定的消息队列解决方案 。
2.安装依赖包
2.1 安装所需依赖包
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
yum install fop.noarch
yum -y install ncurses-devel
yum -y install openssl-devel
yum -y install unixODBC-devel
yum -y install gcc-c
yum install gtk2-devel.x86_64
yum -y install gtk2-devel binutils-devel
yum install mesa-libGL-devel mesa-libGLU-devel
yum install fop.noarch
2.2 安装 wxWidgets
wget https://netix.dl.sourceforge.net/project/wxwindows/3.0.1/wxWidgets-3.0.1.tar.bz2bzip2 -dkv wxWidgets-3.0.1.tar.bz2tar -xvf wxWidgets-3.0.1.tarcd wxWidgets-3.0.1/./configure --with-opengl --enable-debug --enable-unicodemake make install
3. 安装Erlang环境
3.1 Erlang包下载
wget -c http://erlang.org/download/otp_src_20.2.tar.gz
3.2 编译安装
tar -zxvf otp_src_20.2.tar.gz
cd otp_src_20.2/#出现no java compile found 加入--without-javac./configure --prefix/usr/local/erlang --without-javac
make
make install
3.3 测试是否成功安装
cd /usr/local/erlang/bin/
./erl
halt(). #成功后退出
3.4 配置环境变量
#将 /usr/local/erlang/bin 加到后面,用:隔开
vi /root/.bash_profile
PATH$PATH:$HOME/bin:/usr/local/erlang/bin
#重启
source /root/.bash_profile
4. RabbitMQ安装
4.1 下载最新安装包
wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unixxz-3.6.15.tar.xz
4.2 编译安装
xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.15.tar
cp -r ./rabbitmq_server-3.6.15 /usr/local/rabbitmpServer
4.3 加入环境变量
export PATH$PATH:/usr/local/rabbitmq_server-3.6.15/sbin 4.4 rabbitmq操作指令
启动rabbitmq-server -detached
关闭rabbitmqctl stop
状态rabbitmqctl status
4.5 开机启动
在/etc/init.d 目录下新建一个 rabbitmq
#!/bin/bash
#
# chkconfig: 2345 80 05
# description: rabbitmq
# processname: rabbitmq#RabbitMQ安装目录
RABBITMQ_HOME/usr/local/rabbitmpServer
export RABBITMQ_HOMEcase $1 instart)echo Starting RabbitMQ ...cd $RABBIT_HOME/sbinrabbitmq-server;;
stop)echo Stopping RabbitMQ ...cd $RABBIT_HOME/sbinrabbitmqctl stop;;
status)echo Status RabbitMQ ...cd $RABBIT_HOME/sbinrabbitmqctl status;;
restart)echo Restarting RabbitMQ ...cd $RABBIT_HOME/sbinrabbitmq-server;;*)echo Usage: $prog {start|stop|status|restart};;
esac
exit 0
4.6 配置rabbitmq网页管理插件
默认来宾用户guest 来宾用户密码guest
rabbitmq-plugins enable rabbitmq_management
http://192.168.?.?:15672 端口默认为156725. rabbitmq常用命令
查看状态
查看节点状态rabbitmqctl status
查看节点详细信息rabbitmqctl status -p
管理用户
添加用户rabbitmqctl add_user username password
删除用户rabbitmqctl delete_user username
设置用户权限rabbitmqctl set_permissions -p vhost user configure,write,read
查看用户列表rabbitmqctl list_users
管理队列
查看所有队列rabbitmqctl list_queues
查看队列详细信息rabbitmqctl list_queues -p vhost_name
删除队列rabbitmqctl delete_queue vhost_name queue_name
清除队列消息rabbitmqctl purge_queue vhost_name queue_name
管理权限
设置用户权限rabbitmqctl set_permissions -p vhost user configure,write,read resource
查看用户权限rabbitmqctl list_user_permissions user
管理交换器
查看所有交换器rabbitmqctl list_exchanges
查看交换器详细信息rabbitmqctl list_exchanges -p vhost_name
删除交换器rabbitmqctl delete_exchange vhost_name exchange_name
管理绑定
查看绑定rabbitmqctl list_bindings
查看特定交换器的绑定rabbitmqctl list_bindings -p vhost_name e exchange_name
插件管理
启用插件rabbitmq-plugins enable plugin_name
禁用插件rabbitmq-plugins disable plugin_name
查看已启用的插件rabbitmq-plugins list
6.最后
感谢大家请大家多多支持