天天看點

rabbitmq實戰指南

MQ消息隊列中間件,P2P,PUB/SUB 生産者消費者模型

erlang中實作AMQP

1 安裝配置

2 rabbitmqctl status

3 增加使用者??

rabbitmqctl add_user root root 增加使用者

rabbitmqctl set_permissions -p / root "." "." ".*"

rabbitmqctl set_user_tags root administrator

rabbitmqctl list_queues name messages_ready

D:持久化隊列

vhost之間是絕對獨立的

rabbitmqctl add_vhost vhost1

rabbitmqctl list_vhosts name tracing

rabbitmqctl trace_on

rabbitmqctl delete_vhost aa

rabbitmqctl set_permissions -p vhost user conf write read

rabbitmqctl set_permissions -p vhost1 root "." "." ".*"

rabbitmqctl clear_permissions -p vhosts root

rabbitmqctl list_permissions -p vhost1

rabbitmqctl list_vhosts -q -t xx

rabbitmqctl add_user username password

rabbitmqctl change_user username password

rabbitmqctl authenticate_user username password

rabbitmqctl delete_user username

rabbitmqctl list_users

rabbit預設的角色:tag

none,management:web policymaker:web,policy,parameter

monitoring, administrator:all

rabbitmqctl set_user_tags userename management,policymaker,monitoring

開啟web管理端插件:

rabbitmq-plugins enable rabbitmq_management

rabbitmq-plugins list

web:

http://ip:15672

用-detach啟動的,沒有pidfile

rabbitmqctl shutdown

rabbitmqctl stop_app

rabbitmqctl start_app

rabbitmqctl reset

rabbitmqctl force_reset

日志lunxun

rabbitmqctl rotate_logs .1

叢集

rabbitmqctl cluster_status

rabbitmqctl join_cluster rabbit@node2

rabbitmqctl set_cluster_name cluster_name

rabbitmqctl list_queues -p vhosts x1 x2 x3 ..

rabbitmqctl report > a.txt

./rabbitmqadmin --help

rabbitmq-env.conf 配置檔案

NODENAME=

NODE_PORT=5672

CONFIG_FILE=/XXX

RABBITMQ_NODE_IP_ADDRESS

RABBITMQ_NODE_PORT 5672

RABBITMQ_DIST_PORT 25672

RABBITMQ_NODENAME

RABBITMQ_CONF_ENV_FILE

RABBITMQ_CONFIG_FILE #沒有.config

RABBITMQ_MNESIA_BASE

RABBITMQ_MNESIA_DIR

RABBITMQ_LOG_BASE

RABBITMQ_LOGS

RABBITMQ_PLUGINS_DIR

----常用配置

CONFIG_FILE=/rabbitmq/rabbitmq

CONFIG_ENV_FILE=/rabbitmq/rabbitmq-env.conf

LOG_BASE=/rabbitmq/logs

MNESIA_BASE=/rabbitmq/mnesia

rabbitmqctl set_parameter -p vhost

rabbitmqctl list_parameters -p /

rabbitmqctl clear_parameter -p vhost

rabbitmqctl list_global_parameters

rabbitmqctl set_policy --apply-to exchanges --prority 1 p1

rabbitmq叢集的搭建

節點的删除、添加、更新

--

rabbitmq單機多節點的配置

監控

rabbitmq 通過3種方式實作分布式部署:叢集、federation、shovel

rabbitmq-plugins enable rabbitmq_federation

rabbitmq-plugins enable rabbitmq_federation_management

rabbitmq-plugins enable rabbitmq_shovel

rabbitmq-plugins enable rabbitmq_shovel_management

叢集種erlang和rabbitmq的版本要一緻

shovel和federation的版本可以随意

rabbitmq消息堆積處理

5672 25672

處理網絡分區

配置自動處理網絡分區:pause-minority ,autoheal

rabbitmq實戰指南

image.png

firehose,rabbitmq_tracing插件

rabbitmq負載均衡