zoukankan      html  css  js  c++  java
  • RabbitMQ (入门概念篇)

             RabbitMQ是基于AMQP(Advanced Message Queuing Protocol)的可复用的消息系统,AMQP提供统一消息服务的应用层的标准高级消息队列协议,用于消息中间件的设计。

    RabbitMQ的开发语言是Erlang,可以使完全不同的Application共享数据。是程序中解耦的一大利器,当程序中一些不需要及时返回且耗时时间比较长的逻辑,可以使用MQ进行异步处理,缩短了请求响应时间,吞吐就大了。

    基本概念

    1:Host :Server服务器主机

              (name主机名,port端口,VirtualHost虚拟主机,username用户名,password密码)

    2:Exchange:交换机,用于指定消息按照什么规则,路由到什么队列。

                   (name,交换机名称,type交换机类型,Durable是否持久化,AutoDelete是否自动删除)

          其中交换机类型包括(topic,direct,fanout,x-delayed-message)

    3:Queue :队列,即消息的容器,每个消息都可以生产到一个或多个队列。

         (name:队列名称,Durable是否持久化,AutoDelete是否自动删除,NoAck是否消息确认)

    4:RoutingKey:路由关键字。Exchange根据此进行消息投递。

    5:Binding:绑定,按照路由关键字把Exchange和Queue绑定关联起来。

    6:Channel:消息的传输信道。每一个连接,可建立多Channel,每个Channel代表一个会话。

    7:Producer:生产者。发送消息的程序。

    8:Consumer:消费者。接收消息的程序。

    生产/消费的流程

      1:根据Server主机地址,端口,虚拟主机,账号和密码 设置ConnectionFactory

      2:创建新的连接 NewConnection

      3:创建通道 CreateChannel

      4:声明创建队列QueueDeclare

      5:发送消息Publish/接收消息Consume

      6:关闭通道CloseChannel

      8:关闭连接CloseConnection

  • 相关阅读:
    02(c)多元无约束优化问题-牛顿法
    02(b)多元无约束优化问题-最速下降法
    数据仓库建模指南系列教程学习笔记
    ML_Gradient ascent algorithm for learning logistic regression classifier
    ML_聚类之Nearest neighbor search
    ML_Clustering & Retrieval(一)
    复习_git教程
    Predicting sentiment from product reviews情感预测
    ML_classification_intro
    ML_classification
  • 原文地址:https://www.cnblogs.com/localhost2016/p/8875843.html
Copyright © 2011-2022 走看看