Docker实战(十)之分布式处理与大数据平台
分布式系统和大数据处理平台是目前业界关注的热门技术。 1.RabbitMQ RabbitMQ是一个支持AMQP的开源消息队列实现,由Erlang编写,因以高性能、高可用以及可伸缩性出名。它支持多种客户端,如:Java、Python、PHP、Ruby、.NET、JavaScript等。 它主要用于分布式系统中存储和转发消息,方便组之间的解耦,消息的发送无需知道消息使用者的存在,反之亦然。 AMQP架构中有两个主要组件:Exchange和Queue,两者都在服务端,又称Broker,由RabbitMQ实现。客户端通常有Producer和Consumer两种类型。 在使用RabbitMQ过程中需要注意的是,它将数据存储在Node中,默认情况为hostname。因此在使用docker run指令运行容器的时候, 应该通过-h/--hostname参数指定每一个rabbitmq daemon运行的主机名。这样可以轻松得地管理和维护数据了: 用户使用rabbitmqctl工具进行远程管理,或跨容器管理的时候,会需要设置持久化的Cookie。如果需要了解关于Erlang Cookie的信息,可以参见...