RabbitMQ安装和使用
linux下安装配置rabbitMQ详细教程 https://blog.csdn.net/qq_22075041/article/details/78855708
消息中间件 主要作用: 异步,解耦,削峰
消息中间件 典型应用场景:
1、跨系统的异步通信 例如人民银行二代支付系统,使用重量级消息队列 IBM MQ,异步,解耦,削峰都有体现。
2、应用内的同步变成异步 秒杀:自己发送给自己
3、基于Pub/Sub模型实现的事件驱动
4、利用消息队列实现事务的最终一致性
AMQP协议AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件同产品、不同的开发语言等条件的限制。AMQP的实现有:RabbitMQ、OpenAMQ、Apache Qpid、Redhat Enterprise MRG、AMQP Infrastructure、Zyre等。
RabbitMQ的特性 RabbitMQ使用Erlang语言编写,使用Mnesia数据库存储消息。
(1)可靠性(Reliability) RabbitMQ 使用一些机制来保证可靠性,如持久化、传输确认、发布确认。
AMQP模型
RabbitMQ模型
多个消费者监听一个队列时,消息如何分发
1、Round-Robin(轮询)
默认的策略,消费者轮流、平均地收到消息。
2、Fair dispatch (公平分发)
=========================================================================================================================================
我只是一粒简单的石子,未曾想掀起惊涛骇浪,也不愿随波逐流
每个人都很渺小,努力做自己,不虚度光阴,做真实的自己,无论是否到达目标点,既然选择了出发,便勇往直前
我不能保证所有的东西都是对的,但都是能力范围内的深思熟虑和反复斟酌