RabbitMQ 单实例部署
单实例部署是指在一台服务器上运行一个 RabbitMQ 实例。这种部署方式适用于小型应用或开发环境,配置简单,资源占用较少。单实例部署的核心是安装 RabbitMQ 并启动服务,通常需要配置 Erlang 环境,因为 RabbitMQ 是基于 Erlang 编写的。单实例部署的优势在于易于管理和维护,适合对高可用性和扩展性要求不高的场景。
RabbitMQ 单机多实例部署
单机多实例部署是指在一台服务器上运行多个 RabbitMQ 实例。这种部署方式适用于需要隔离不同业务场景或测试环境的场景。每个实例可以独立配置端口、数据存储路径和日志文件,避免资源冲突。单机多实例部署的关键在于为每个实例分配独立的配置文件和资源路径,同时确保实例之间的端口不冲突。这种部署方式可以提高资源利用率,但需要更复杂的管理和维护。
单实例与单机多实例的对比
单实例部署适合资源有限或对高可用性要求不高的场景,配置简单,易于管理。单机多实例部署则适合需要隔离不同业务或测试环境的场景,能够充分利用服务器资源,但管理复杂度较高。选择哪种部署方式取决于具体的业务需求和技术环境。
二进制包下载及端口说明
https://www.rabbitmq.com/install-generic-unix.html
单实例部署参考
https://help.aliyun.com/document_detail/53100.html
服务启动文件
[Unit]
Description=rabbitmq
After=network.target
[Service]
Type=forking
User=root
Group=root
WorkingDirectory=/data/rabbitmq_server
ExecStart=/data/rabbitmq_server/sbin/rabbitmq-server -detached
ExecStop=/data/rabbitmq_server/sbin/rabbitmqctl stop
PrivateTmp=true
LimitNOFILE=65536
Restart=always
[Install]
WantedBy=multi-user.target
配置环境变量
vim /data/rabbitmq_server-1/sbin/rabbitmq-server
...
11 export PATH=$PATH:/data/erlang/bin
vim /data/rabbitmq_server-c/sbin/rabbitmq-env
...
8 export PATH=$PATH:/data/erlang/bin
单机多实例部署
部署erlang
mq与erlang匹配的版本
https://www.rabbitmq.c