异步逻辑,在工程,集群中,实现
1 通信解耦
2 消峰限流
系统功能:秒杀,前台门户网站接收海量并发请求,只做消息的发送(生产端),发送到消息队列.由消费系统实现消费逻辑,将秒杀的用户/商品入库;
历史
业务系统与认证系统的认证(具有高效,权威的算法机构)通信
Rabbitmq
支持企业级别的消息队列功能;性能极高(并发性能),内部使用erlang语言编写交换机的组件,实现多种使用模式的消息队列;
-
结构
客户端:rabbitmq不同的模式,对接的客户端语言不同
角色:生产端,负责发送消息到交换机;
消费端,监听队列,获取队列的消息,进行消费;
核心组件
连接对象:长连接(connection),信道连接(channel)
客户端创建单个长连接,在长连接上频繁使用,销毁短连接
交换机:基于erlang语言开发的,并发语言,程序的运行可以控制线程等cpu资源,实现并发的定义.并发能力超高;交换机需要绑定队列使用;在rabbitmq中存在一个默认的交换机AMQP Default 名字是"",绑定一切队列;生产端只能将消息发送给交换机处理
交换机的类型:topic(主题类型),fanout(发布订阅),direct(路由类型);AMQP default 类型路由类型;
队列QUEUE:实现消息存储,被消费的位置的内存组件,可以和消息,交换机一起持久化到硬盘,防止数据丢失;消费者客户端直接绑定队列,监听队列的消息生成,一旦在空闲时间,有消息生成,直接获取,获取之后反馈确认消费;
rabbitmq使用模式
通过ip地址,端口,用户名,密码,通过虚拟机操作具体的rabbtimq内容;rabbitmq的默认设置用户guest,密码guest,绑定的默认虚拟机"/"
来源:https://www.cnblogs.com/shuzhiwei/p/11204791.html