无法启动RabbitMQ STOMP插件?

时间:2016-02-22 17:20:46

标签: centos erlang rabbitmq message-queue messagebroker

我一直在尝试在CentOS 6中启动RabbitMQ服务器但不幸的是,它在启用STOMP插件时会抛出以下错误消息。

我正在尝试运行:RabbitMQ 3.6.0

我知道已经使用了61613。 但我不知道如何更改或配置它。

是否有一些快速而肮脏的方法来杀死它并重新启动服务器? 当然,我不想禁用该插件。



BOOT FAILED
===========

Error description:
   {could_not_start,rabbitmq_stomp,
       {{undef,
            [{rabbit_networking,tcp_listener_spec,
                 [rabbit_stomp_listener_sup,
                  {{0,0,0,0,0,0,0,0},61613,inet6},
                  [{backlog,128},{nodelay,true}],
                  ranch_tcp,rabbit_stomp_client_sup,
                  {stomp_configuration,"guest","guest",false,false},
                  stomp,"STOMP TCP Listener"],
                 []},
             {rabbit_stomp_sup,'-listener_specs/3-lc$^1/1-1-',4,
                 [{file,"src/rabbit_stomp_sup.erl"},{line,44}]},
             {rabbit_stomp_sup,init,1,
                 [{file,"src/rabbit_stomp_sup.erl"},{line,38}]},
             {supervisor,init,1,[{file,"supervisor.erl"},{line,272}]},
             {gen_server,init_it,6,[{file,"gen_server.erl"},{line,328}]},
             {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]},
        {rabbit_stomp,start,[normal,[]]}}}

{"init terminating in do_boot",{could_not_start,rabbitmq_stomp,{{undef,[{rabbit_networking,tcp_listener_spec,[rabbit_stomp_listener_sup,{{0,0,0,0,0,0,0,0},61613,inet6},[{backlog,128},{nodelay,true}],ranch_tcp,rabbit_stomp_client_sup,{stomp_configuration,"guest","guest",false,false},stomp,"STOMP TCP Listener"],[]},{rabbit_stomp_sup,'-listener_specs/3-lc$^1/1-1-',4,[{file,"src/rabbit_stomp_sup.erl"},{line,44}]},{rabbit_stomp_sup,init,1,[{file,"src/rabbit_stomp_sup.erl"},{line,38}]},{supervisor,init,1,[{file,"supervisor.erl"},{line,272}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,328}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]},{rabbit_stomp,start,[normal,[]]}}}}




根据rabbitmq-users组的说法,这本身就是rabbitmq-server本身的一个错误...所以解决这个问题的方法是你可以切换或

尝试3.6.1.RC2: https://groups.google.com/forum/#!searchin/rabbitmq-users/RC2/rabbitmq-users/QmB-YLo89d0/U1GoGYpmAQAJ

我尝试使用3.6.1.RC2并解决了这个问题。

2 个答案:

答案 0 :(得分:0)

来自https://www.rabbitmq.com/stomp.html

  

编辑您的配置文件,以包含tcp_listeners应用程序

rabbitmq_stomp变量      

例如,将侦听器端口更改为12345的完整配置文件如下所示:

[
  {rabbitmq_stomp, [{tcp_listeners, [12345]}]}
].
  

虽然将侦听器更改为仅侦听localhost(对于IPv4和IPv6)的内容如下所示:

[
  {rabbitmq_stomp, [{tcp_listeners, [{"127.0.0.1", 61613},
                                     {"::1",       61613}]}]}
].

答案 1 :(得分:0)

根据Amiramix的建议(来自此评论帖),我正在回答我的问题。

在CentOS 6中,我发现了一个STOMP插件的错误,它会抛出错误堆栈,如上面的问题所示。但是,从官方的rabbitmq贡献者那里,我得到了回复尝试更新版本的rabbitmq-server。

所以我尝试使用3.6.1.RC2并解决了这个问题(在这个版本中有大约35个bug修复和次要增强与3.6.0相比)

https://groups.google.com/forum/#!searchin/rabbitmq-users/RC2/rabbitmq-users/QmB-YLo89d0/U1GoGYpmAQAJ

最新的rabbitmq-server版本,请尝试here