如何在Windows上安装rabbitmq服务器

时间:2010-04-05 23:11:26

标签: windows build cygwin rabbitmq

如何在Windows上安装RabbitMQ?

4 个答案:

答案 0 :(得分:3)

从完整的捆绑包中安装

捆绑包zip文件包含下一节中列出的所有文件,包括Erlang系统安装程序和RabbitMQ代理二进制分发版,.Net客户端,以及Java librabbitmq客户端库的存档。[{{3 }}

  1. 安装windows erlang5.7.4 [otp_win32_R13B03]。
  2. 从下载页面下载rabbitmq-server-windows-2.0.0.zip。
  3. 3.在zip文件中包含一个名为rabbitmq_server-2.0.0的目录。您应该将此文件夹解压缩到适合应用程序文件的位置,例如C:\ Program Files \ RabbitMQ。

    4.一旦成功提取文件,您应该得到类似于C:\ Program Files \ RabbitMQ \ rabbitmq_server-2.0.0的结构。

    1. 将环境变量ERLANG_HOME设置为指向您的Erlang目录(例如C:\ Program Files \ erl5.7.4)
    2. 6.以默认的RABBITMQ_BASE路径为Windows C:\ Documents and Settings \ User \ Application Data \ RabbitMQ。您的所有详细信息,如日志文件等,都存储在此目录中。

      将服务器作为应用程序运行

      1.rabbitmq_server-2.0.0 \ sbin并双击rabbitmq-server.bat文件。

      将服务器作为服务运行

      1.以管理员身份登录并在安装代理的sbin目录中打开命令shell(cmd.exe)。通过执行

      安装服务

      rabbitmq-service.bat install

      2.确保服务控制面板(services.msc)中现在显示名为RABBITMQ_SERVICENAME的服务。

      有关详细信息,请访问http://www.rabbitmq.com/download.html]

答案 1 :(得分:1)

RabbitMQ旨在构建在Unix机器上(我们经常使用各种Linux发行版和OSX)。社区也在FreeBSD上进行测试。

也就是说,在Windows上构建肯定是可能的,但是你需要类似POSIX的环境。最简单的方法是使用cygwin:

  • here
  • 安装最新的Erlang
  • here
  • 获取Cygwin安装程序
  • 运行它以安装基本系统;确保您还选择了makelibxslt / xlstprocmercurial;如果你忘了什么,你可以安全地重新运行安装程序来获取缺少的程序;
  • 更新您的PATH以包含python和erl(因此,添加类似C:\Program Files\erl5.8.3\binC:\Python27\bin的内容;当然,您的路径可能会有所不同);通过运行pythonerl
  • 来检查一切是否正常
  • 通过Mercurial获取RabbitMQ source(您还需要the codegen);
  • 来自cygwin shell,在make目录中运行rabbitmq-server

最后两个步骤是正常的Unix安装过程。有关详细信息,请参阅官方instructions

另请注意,您可能必须从正常的命令提示符运行代理(scripts/rabbitmq-server.bat)并且运行cygwin shell。这是由于Erlang和Cygwin认为根目录为/之间存在差异。

如果您有任何问题,请发送邮件至rabbitmq-discuss邮件列表。开发人员回答了那里发布的所有问题。

答案 2 :(得分:0)

除非您打算开发Erlang代码,否则没有太多意义,在这种情况下,您应该花一两天时间学习Erlang的基础知识。之后,因为RabbitMQ是用Erlang编写的,所以它不会那么挣扎。

我在Linux上构建了Erlang,但是在Windows上我只是安装了二进制包,因为它只是我的测试/开发环境。在Linux上,我在确定如何安装二进制文件时遇到了问题,在Windows上花了一些时间来确定将配置文件放在哪里以便我可以加载插件。

在任何情况下,您都不会在Windows或Linux上运行RabbitMQ,因为它不能以这种方式运行。像许多Erlang应用程序一样,RabbitMQ在云(您的私有云)上运行,并且真的希望成为运行共享MQ代理服务的多个服务器集群的一部分。

转到此slide presentation from Google Tech Talks并查看幻灯片17上的图表。这就是如何在群集中运行RabbitMQ的4台服务器为本地客户端提供服务的本地客户端可能是同一个数据中心中的几个地理区域。本地流量不会通过群集,但应用程序不需要执行任何特殊操作即可在群集中发送/接收消息。

幻灯片22总结了“让Erlang消失”。您可以获得Erlang的所有好处,而无需了解它。只需使用AMQP消息传递和许多进程。跟线程说再见。

答案 3 :(得分:-1)

不要打扰。显然,Cygwin可能“某种程度上”,但我也放弃了,因此失去了兴趣。这是一个根植于Erlang文化的常见问题,它似乎并不真正理解跨平台开发。