这里每一个 Queue 都会得到属于自己的消息的副本,这些消息副本就可以被消息的接收者所使用。
在很多大规模多人游戏的场景中,经常使用这种方式来同步玩家的数据:每个玩家都订阅到一个 Fanout Exchange,你游戏的实例只需要将数据发送到一个地方即可,游戏中其他的玩家就会获得更新,而你的游戏实例就不需要知道如何数据发往每一个玩家了。
安装 RabbitMQ 和常用工具
RabbitMQ 是使用 Erlang 语言编写的,这也是 RabbitMQ 能够提供如此高的可靠性的原因之一。
安装 RabbitMQ
所以,如果想使用 RabbitMQ,就必须安装 Erlang。
以 Windows 操作系统为例,我们可以去 Erlang 官方网站下载 Erlang 的安装包进行安装,而我更喜欢 chocolatey ( https://chocolatey.org/ ) 这个 Windows 操作系统的包管理工具。
1. 安装 Chocolatey:
a. 使用管理员打开 Powershell
b. 运行 Get-ExecutionPolicy,如果返回是 Restricted,那么运行 Set-ExecutionPolicy AllSigned 或者 Set-ExecutionPolicy Bypass -Scope Process
c. 然后执行命令:Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
回车,等一会就安装完了。
d. 最后输入 choco -? 命令试一下,如果出现类似以下结果,就说明安装成功了:
2. 使用 Chocolatey 安装 RabbitMQ:可以在 https://chocolatey.org/packages 搜索 RabbitMQ。找到 RabbitMQ 之后,按页面提示,使用 choco install rabbitmq 命令进行安装即可。(安装的过程中应该会自动安装依赖的 Erlang,如果不行,那么就搜索 Erlang,先安装 Erlang 即可)。
在其他操作系统安装 RabbitMQ 的过程请查看官方文档:https://www.rabbitmq.com/download.html
使用命令行与 RabbitMQ 交互
在 Windows 10 上,按 Windows + S 进行搜索,输入 RabbitMQ,或得到以下结果:
最上面的 RabbitMQ Command Prompt 就是安装包提供的一个快捷命令行链接,它指向 RabbitMQ 的 sbin 目录。而 RabbitMQ 所提供的命令行工具都在这个目录下。