`
flashing
  • 浏览: 349805 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

一点对rabbitmq的使用心得

 
阅读更多

1.如果远程客户端网络状况不是太好,比如adsl什么的,那么一定在客户端打开requstedHeartbeat

2.如果在同一台机器上,千万不要打开requstedHeartbeat,即requstedHeartbeat=0

3.各个系统下配置文件的位置:

 

Windows - %APPDATA%\RabbitMQ\rabbitmq.config

 

Debian - /etc/rabbitmq/rabbitmq.config

 

RPM - /etc/rabbitmq/rabbitmq.config

 

MacOS (Macports) - /opt/local/etc/rabbitmq/rabbitmq.config

 

Generic UNIX - /etc/rabbitmq/rabbitmq.config

 

但是千万注意,不管你是设置了配置文件还是修改了环境变量RABBITMQ_*,至少windows下都必须从新安装服务才能生效,仅重启服务是没用的!话说这个问题非常奇怪啊,它是采取的服务参数的形式处理的而不是读取配置文件。

 

比如你在rabbitmq.config里面写了:

 

[{kernel,[{inet_dist_use_interface,{127,0,0,1}}]}].

 

那么重启服务没用,重装服务你才会发现这玩意监听在localhost了。

 

 

为了远程管理兔子MQ,可以打开management:

 

rabbitmq-plugins enable rabbitmq_management

 

但是由于用户权限配置问题,需要一点点的设置:

 

http://stackoverflow.com/questions/14699873/how-to-reset-user-for-rabbitmq-management

 

rabbitmqctl set_user_tags usrname administrator

 

这样才能登录!

 

官方demo里面RPC模式基本就是骗人的,这个模式带来的问题远比解决的问题多一百倍!

我的建议是不到万不得已,绝对不要阻塞请求来等待回复,这个模型太麻烦了,还是完全open的队列模式客户端自己取更合适。

 

 调试程序的的时候,如果是异步队列,千万注意了,如果你收不到消息,很可能不是错误而是让别人的跑的应用收去了!所以这个地方一定控制一下只一个人取。

 

 

 

 

 

 

 

分享到:
评论
2 楼 flashing 2014-11-07  
wubudomain 写道
你好,requstedHeartbeat在哪配置呢,没找到

连接参数吧,不是配置的,是代码里面的。
1 楼 wubudomain 2014-10-31  
你好,requstedHeartbeat在哪配置呢,没找到

相关推荐

Global site tag (gtag.js) - Google Analytics