rabbit知识点汇总笔记

rabbitmq-plugins enable rabbitmq_management //启用管理插件
rabbitmqctl set_user_tags usrname administrator //设置administrator角色








queue_declare($_QUEUE,false,true,false,false);
第三个参数设置true保证服务器重启后,自动建立队列
第五个参数设置成false防止接收端没连接的时候丢失消息
$ch->exchange_declare($EXCHANGE, 'direct', false, true, false);
第四个参数设置true保证重启后,自动建立交换机
第五个参数设置false防止接收端断开后,交换机被删除




关于修改监听ip和监听端口
vi /etc/rabbitmq/rabbitmq.conf
RABBITMQ_NODE_IP_ADDRESS=0.0.0.0
RABBITMQ_NODE_PORT=2222








配置
一般情况下,RabbitMQ的默认配置就足够了。如果希望特殊设置的话,有两个途径:
一个是环境变量的配置文件 rabbitmq-env.conf ;
一个是配置信息的配置文件 rabbitmq.config;
注意,这两个文件默认是没有的,如果需要必须自己创建。
rabbitmq-env.conf这个文件的位置是确定和不能改变的,位于:/etc/rabbitmq目录下(这个目录需要自己创建)。
文件的内容包括了RabbitMQ的一些环境变量,配置下面:
RABBITMQ_MNESIA_BASE=/rabbitmq/data        //需要使用的MNESIA数据库的路径
RABBITMQ_LOG_BASE=/rabbitmq/log        //log的路径
RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins    //插件的路径




rabbitmq.config
这是一个标准的erlang配置文件。它必须符合erlang配置文件的标准。
它既有默认的目录,也可以在rabbitmq-env.conf文件中配置。




管理
Rabbitmq服务器的主要通过rabbitmqctl和rabbimq-plugins两个工具来管理




持久化
创建queue和exchange默认情况下都是没有持久化的,节点重启之后queue和exchange就会消失,这里需要特别指定queue和exchange的durable属性.




启动异常
启动rabbitmq-server时,报错信息:Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_{log, _err}
解决:使用netstat 查看是否存在,如果存在用kiss 将其杀死,在启动,我试过可以解决




持久化
一般的AMQP库都是将Delivery Mode设置成1,也就是非持久的。所以要持久化消息的步骤如下:
将交换机设成 durable。
将队列设成 durable。
将消息的 Delivery Mode 设置成2 。




应用和集群管理 
1.停止RabbitMQ应用,关闭节点 
# rabbitmqctl stop 
2.停止RabbitMQ应用 
# rabbitmqctl stop_app 
3.启动RabbitMQ应用 
# rabbitmqctl start_app 
4.显示RabbitMQ中间件各种信息 
# rabbitmqctl status 
5.重置RabbitMQ节点 
# rabbitmqctl reset 
# rabbitmqctl force_reset 




6.循环日志文件 
# rabbitmqctl rotate_logs[suffix] 
7.集群管理   www.2cto.com  
# rabbitmqctl cluster clusternode… 
用户管理 
1.添加用户 
# rabbitmqctl add_user username password 
2.删除用户 
# rabbitmqctl delete_user username 
3.修改密码 
# rabbitmqctl change_password username newpassword 
4.列出所有用户 
# rabbitmqctl list_users 
 
权限控制 
1.创建虚拟主机 
# rabbitmqctl add_vhost vhostpath 
2.删除虚拟主机   www.2cto.com  
# rabbitmqctl delete_vhost vhostpath 
3.列出所有虚拟主机 
# rabbitmqctl list_vhosts 
4.设置用户权限 
# rabbitmqctl set_permissions [-p vhostpath] username regexp regexp regexp 
5.清除用户权限 
# rabbitmqctl clear_permissions [-p vhostpath] username 
6.列出虚拟主机上的所有权限 
# rabbitmqctl list_permissions [-p vhostpath] 
7.列出用户权限 
# rabbitmqctl list_user_permissions username








参考:http://blog.csdn.net/zhangxinrun/article/details/8178262 
     http://www.cnblogs.com/whymaths/archive/2013/01/27/2878529.html
     http://www.cnblogs.com/orez88/articles/1864328.html
     http://2057.iteye.com/blog/1749945
     http://www.2cto.com/os/201206/137847.html?fw_key=20EAF9E5E8BB84D5
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值