rabbitmq是什么?
MQ的全称是Messagee Queue,因为消息的队列是队列,所以遵循FIFO 先进先出的原则是上下游传递信息的跨过程通信机制。
RabbitMQ是一套开源(MPL)新闻队列服务软件由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 开源实现以其高性能、强度和可伸缩性而闻名 Erlang 写成。RabitMQ本身是基于Erlang编写的,Erlang语言自然具有分布式特性(Magic通过同步Erlang集群每个节点 实现cookie)。
RabbitMQ部署,RabbitMQ安装
(1)Erlang与RabbitMQ,所有安装路径都不应包含空格符。
(2)Erlang使用环境变量HOMEDRIVE和HOMEPATH访问配置文件.erlang.cookie,应注意这两个环境变量的有效性。环境变量ERLANG_需要设置HOME,并把%ERLANG_HOME%加入全局路径的\bin。
(3) rabbitmq使用本地computer name作为服务器的地址,需要注意其有效性,或者直接分析为127.0.0.1
(4)相应的端口需要在当地网络防火墙上打开。
rabbitmq原理
生产者(Producer)通过信道(Channel)将信息发送给交换机(Exchange),创建交换机时,需要指定类型(四种类型:直接Direct,扇出Fanout ,主题Topic ,Headers的消息 );
交换机(Exchange)接收消息并负责消息的路由,交换机根据消息的属性将消息分发到不同的队列中(Queue)上;
消息(Message)直到消费者被消费者留在队列中(Consumer)消费。
PetaExpress RabbitMQ 服务可以了解下:https://www.petaexpress.com/products/b4f14dfe94419312.html
PetaExpres推出云服务器免费试用,有需要的可进行参与:https://www.petaexpress.com/free