activemq

学习ActiveMQ的使用

匿名 (未验证) 提交于 2019-12-03 00:40:02
一、什么是ActiveMQ? ActiveMQ 是Apache出品的,非常流行的开源消息中间件,ActiveMQ是一个完全支持 JMS 1.1和J2EE1.4规范的JMS Provider实现,(JMS是一个Java平台中关于面向消息中间件的API,用于两个应用程序之间,或分布式系统中发送消息,进行异步通信, 仅仅定义了一系列的接口,ActiveMQ是对于JMS接口的一种实现)。 二、ActiveMQ的消息形式 对于消息的传递有两种类型: 1)点到点:一个生产者和一个消费者一一对应;(使用时生产者提供的消息会进行缓存,直到消费者使用) 2)发布/订阅:一个生产者产生消息发送后,可以由多个消费者订阅接收;(使用时消息不进行缓存,所以消费者需要提前做好接收准备,否则消息会丢失) JMS定义了5种不同的消息正文格式: StreamMessage--Java原始值的数据流 MapMessage--一套名称-值对 TextMessage--一个字符串对象(最常用的消息格式) ObjectMessage--一个序列化的Java对象 BytesMessage--一个字节的数据流 三、ActiveMQ的安装 需要到 官方网站 下载安装包。 使用时需要提前安装好Java环境即JDK,然后解压到执行目录即可使用。 进入解压后文件的bin目录下,使用命令:./activemq start启动服务。

spring整合activeMQ

匿名 (未验证) 提交于 2019-12-03 00:40:02
pom.xml 1 < project xmlns ="http://maven.apache.org/POM/4.0.0" 2 xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation ="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > 4 < modelVersion > 4.0.0 </ modelVersion > 5 < groupId > io.guangsoft </ groupId > 6 < artifactId > amq </ artifactId > 7 < version > 0.1 </ version > 8 < packaging > war </ packaging > 9 < properties > 10 < project.build.sourceEncoding > UTF-8 </ project.build.sourceEncoding > 11 < spring.version > 4.1.7.RELEASE </ spring.version > 12 < jackson.version > 2.5.0 </ jackson

ActiveMQ 的安装与使用(springboot版本)

匿名 (未验证) 提交于 2019-12-03 00:40:02
一、安装 上官网下载tar包 http://activemq.apache.org/ tar -zxvf 后进入bin/linux-86-64 ./activimq start 启动 二、使用 pom文件引入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq</artifactId> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-pool</artifactId> </dependency> <dependency> application.properties的配置文件 spring.activemq.broker-url=tcp: // 39.108.83.105:61616 #spring.activemq.broker-url=tcp: // 127.0.0.1

消息中间件(下)

匿名 (未验证) 提交于 2019-12-03 00:39:02
1.Windows安装activeMQ 官网下载activeMQ,注意activeMQ版本需要和jdk版本相符才行,下载压缩包,解压得到文件夹,进入到bin目录,如下图 其中activemq.bat是启动一次,显示出一个dos窗口,关闭即结束,这里选择第二个安装activemq服务,然后到系统设置中开启服务即可 2.linux下安装activemq linux下安装activemq,需要先安装jdk才可以,安装activemq的步骤如下: 1)wget https://archive.apache.org/dist/activemq/5.14.4/apache-activemq-5.14.4-bin.tar.gz 2)apache-activemq-5.14.4-bin.tar.gz 解压文件 3)cd apache-activemq-5.14.4 ,进入到apache-activemq-5.14.4目录下 4)cd bin 进入bin目录 5)./activemq start 启动activemq服务 原文:https://www.cnblogs.com/wangxiaochao/p/9248650.html

activemq详解一

匿名 (未验证) 提交于 2019-12-03 00:39:02
由于项目中有用ActiveMQ,所以记录下学习的过程,先看下JMS。 消息模型 ○ Point- to -Point(P2P) ○ Publish/Subscribe(Pub/ Sub ) 即点对点和发布订阅模型 P2P P2Pģʽͼ 涉及到的概念 消息队列(Queue) 发送者(Sender) 接收者(Receiver) 每个消息都被发送到一个特定的队列,接收者从队列中获取消息。队列保留着消息,直到他们被消费或超时。 P2P的特点 每个消息只有一个消费者(Consumer)(即一旦被消费,消息就不再在消息队列中) 发送者和接收者之间在时间上没有依赖性,也就是说当发送者发送了消息之后,不管接收者有没有正在运行,它不会影响到消息被发送到队列 接收者在成功接收消息之后需向队列应答成功 如果你希望发送的每个消息都应该被成功处理的话,那么你需要P2P模式。 Pub/Sub Pub/Subģʽͼ 涉及到的概念 主题(Topic) 发布者(Publisher) 订阅者(Subscriber) 客户端将消息发送到主题。多个发布者将消息发送到Topic,系统将这些消息传递给多个订阅者。 Pub/Sub的特点 每个消息可以有多个消费者 发布者和订阅者之间有时间上的依赖性。针对某个主题(Topic)的订阅者,它必须创建一个订阅者之后,才能消费发布者的消息,而且为了消费消息,订阅者必须保持运行的状态。

Camel之JMS路由

匿名 (未验证) 提交于 2019-12-03 00:34:01
JMS queue , queue . Camel : , queue.( Camel in Action) 1,因为要用JMS,这里介绍一个open source的activeMQ,可以从http://activemq.apache.org/download.html 下载,下载后解压,bin目录有一个activemq.bat文件,在命令行里运行activemq 启动activeMQ,如果能从从浏览器里访问 http://localhost:8161/admin/ activeMQ成功启动了. 2,在Camel里实现上图所示的路由: JAVA activeMQ的jar包配置到classpath下,Java代码如下: private static private static private static public static void throws new new "jms" new public void "file:d:/temp/inbox" "jms:queue:TOOL.DEFAULT" boolean true while 25000 Camel binary message activeMQ 'TOOL.DEFAULT' queue . textmessage:from("file:d:/temp/inbox").convertBodyTo(String

业务灰度docker-compose编写

匿名 (未验证) 提交于 2019-12-03 00:19:01
version: '2' services: zoo1: image: zookeeper:3.4.9 restart: always ports: - "2181:2181" environment: ZOO_MY_ID: 1 ZOO_SERVERS: server.1=zoo1:2888:3888 activemq: image: webcenter/activemq:5.14.3 restart: always ports: - "8161:8161" - "61613:61613" - "61616:61616" redis: image: redis:3.2.7 restart: always ports: - "6379:6379" # trade: # image: openjdk:7-jdk # ports: # - "18010:18010" # - "18001:18001" # - "18002:18002" # - "18123:18123" # - "20899:20899" # - "30888:30888" # - "20880:20880" # - "20882:20882" # - "20881:20881" # depends_on: # - zoo1 # - activemq # - redis # environment: # - _JAVA

浅谈ActiveMQ(一)-架构

匿名 (未验证) 提交于 2019-12-03 00:19:01
1.简介 ActiveMQ为apache下顶级开源项目,符合jms规约的消息中间件。 关于部署方式,网上有很多这里不再赘述。 2.基于中间件的架构 2.1架构图对比 一、传统架构: 系统间直接互相调用,如果系统比较多那么就会形成网状调用图,各个系统互相嵌入比价深,形成强依赖,可能一个系统变更功能,其余都要有变化,大大加剧维护成本。 【图1】所示,传统架构,各个系统相互调用。财务系统一个接口发生变化,与他相关调用此接口的的系统都会受到影响,都要进行改造。 二、采用基于中间件的架构: 系统间不需要直接互相依赖,以消息的形式和外部系统对接。不需要知道发送到哪个系统,而是由接受消息的系统去订阅相关主题。消息本身为无状态的,发送方不需要等待发送结果。将系统间的强耦合关系弱化。 【图2】所示各个系统均发消息到中间件,需要的系统订阅相应主题的消息,各个系统能达到相对独立的状态。 同样财务系统有变化,其他系统还是一样收发消息,就算某个系统瘫痪,其他系统也能正常运行,消息不可达时,由中间件保障,瘫痪的系统重新拉起后,一定送达。 文章来源: 浅谈ActiveMQ(一)-架构

浅谈ActiveMQ(一)-架构

匿名 (未验证) 提交于 2019-12-03 00:18:01
1.简介 ActiveMQ为apache下顶级开源项目,符合jms规约的消息中间件。 关于部署方式,网上有很多这里不再赘述。 2.基于中间件的架构 2.1架构图对比 一、传统架构: 系统间直接互相调用,如果系统比较多那么就会形成网状调用图,各个系统互相嵌入比价深,形成强依赖,可能一个系统变更功能,其余都要有变化,大大加剧维护成本。 【图1】所示,传统架构,各个系统相互调用。财务系统一个接口发生变化,与他相关调用此接口的的系统都会受到影响,都要进行改造。 二、采用基于中间件的架构: 系统间不需要直接互相依赖,以消息的形式和外部系统对接。不需要知道发送到哪个系统,而是由接受消息的系统去订阅相关主题。消息本身为无状态的,发送方不需要等待发送结果。将系统间的强耦合关系弱化。 【图2】所示各个系统均发消息到中间件,需要的系统订阅相应主题的消息,各个系统能达到相对独立的状态。 同样财务系统有变化,其他系统还是一样收发消息,就算某个系统瘫痪,其他系统也能正常运行,消息不可达时,由中间件保障,瘫痪的系统重新拉起后,一定送达。 文章来源: 浅谈ActiveMQ(一)-架构