• ActiveMQ


     ActiveMQ是什么

    ActiveMQ是一个消息队列应用服务器(推送服务器)。支持JMS规范

     JMS概述

    全称:Java Message Service ,即为Java消息服务,是一套java消息服务的API标准。(标准即接口)

    实现了JMS标准的系统,称之为JMS Provider。

    1.1.1        消息队列

    1.1.1.1    概念

    消息队列是在消息的传输过程中保存消息的容器,提供一种不同进程或者同一进程不同线程直接通讯的方式。

    Producer:消息生产者,负责产生和发送消息到 Broker;

    Broker:消息处理中心。负责消息存储、确认、重试等,一般其中会包含多个 queue;

    Consumer:消息消费者,负责从 Broker 中获取消息,并进行相应处理;

     常见消息队列应用

    (1)、ActiveMQ

    ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现。

    (2)、RabbitMQ

    RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。开发语言为Erlang。

    (3)、RocketMQ

    由阿里巴巴定义开发的一套消息队列应用服务。

    ActiveMQ能做什么

    (1)实现两个不同应用(程序)之间的消息通讯。

    (2)实现同一个应用,不同模块之间的消息通讯。(确保数据发送的稳定性)

     ActiveMQ主要特点

    (1)支持多语言、多协议客户端。语言: Java,C,C++,C#,Ruby,Perl,Python,PHP。应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP

    (2)对Spring的支持,ActiveMQ可以很容易整合到Spring的系统里面去。

    (3)支持高可用、高性能的集群模式。

      PTP模式(point to point)

    --消息模型

     

    消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。

    消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。

    Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费、其它的则不能消费此消息了。

    当消费者不存在时,消息会一直保存,直到有消费消费

    我们的入门示例,就是采用的这种PTP服务模式。

      TOPIC(主题订阅模式)

    --消息模型

     

    消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。

    和点对点方式不同,发布到topic的消息会被所有订阅者消费。

    当生产者发布消息,不管是否有消费者。都不会保存消息

    所以,主题订阅模式下,一定要先有消息的消费者(订阅者),后有消息的生产者(发布者)。

  • 相关阅读:
    团队作业6——复审与事后分析
    Alpha阶段项目复审
    测试与发布( Alpha版本 )
    测试与发布(Alpha版本)
    团队作业4——项目冲刺
    第 1 篇 Scrum 冲刺博客
    第 7篇 Scrum 冲刺博客
    第 6篇 Scrum 冲刺博客
    第 5篇 Scrum 冲刺博客
    第 4篇 Scrum 冲刺博客
  • 原文地址:https://www.cnblogs.com/vieta/p/11284691.html
Copyright © 2020-2023  润新知