activemq的使用
来源:互联网 发布:温州两家人 知乎 编辑:程序博客网 时间:2024/06/16 04:15
一
ActiveMQ 应用场景分析
1、 用户注册,重点用户信息数据库保存,发短信、发邮件,增加业务处理复杂度,这时候使用 MQ, 将发短信、发邮箱,通知 MQ,由另外服务平台完成
2、 搜索平台、缓存平台
查询数据,建立缓存、索引 ,不从数据库查询,从缓存或者索引库查询
当增加、修改、删除数据时,发送消息给 MQ, 缓存平台、索引平台 从 MQ 获取
到这个信息,更新缓存或者索引
ActiveMq的安装使用
官网下载 官网:http://activemq.apache.org/
解压 windows版本
进行 apache-activemq-5.14.0\bin\win64 目录 启动 activemq.bat 文件
访问:http://localhost:8161/ 用户名和密码 都是 admin\
ActiveMQ 使用的是标准生产者和消费者模型
有两种数据结构 Queue、Topic
1、 Queue 队列 ,生产者生产了一个消息,只能由一个消费者进行消费
2、 Topic 话题,生产者生产了一个消息,可以由多个消费者进行消费
二 使用java程序操作ActiveMq
开发 activeMQ 只需要导入 activemq-all-5.14.0.jar
使用 maven 坐标导入
spring整合ActiceMq
<dependency><groupId>org.springframework</groupId><artifactId>spring-jms</artifactId><version>${spring.version}</version></dependency>在spring中配置ActiceMq的连接工厂
<bean id="amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL" value="tcp://localhost:61616" /> <property name="userName" value="admin" /> <property name="password" value="admin" /> </bean>
配置spring mq的管理工厂
<!-- Spring Caching连接工厂 --> <!-- Spring用于管理真正的ConnectionFactory的ConnectionFactory --> <bean id="mqConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory"> <!-- 目标ConnectionFactory对应真实的可以产生JMS Connection的ConnectionFactory --> <property name="targetConnectionFactory" ref="amqConnectionFactory"></property> <!-- 同上,同理 --> <!-- <constructor-arg ref="amqConnectionFactory" /> --> <!-- Session缓存数量 --> <property name="sessionCacheSize" value="100" /> </bean> <!-- Spring JmsTemplate 的消息生产者 start--> <!-- 定义JmsTemplate的Queue类型 --> <bean id="jmsQueueTemplate" class="org.springframework.jms.core.JmsTemplate"> <!-- 这个connectionFactory对应的是我们定义的Spring提供的那个ConnectionFactory对象 --> <constructor-arg ref="mqConnectionFactory" /> <!-- 非pub/sub模型(发布/订阅),即队列模式 --> <property name="pubSubDomain" value="false" /> </bean> <!-- 定义JmsTemplate的Topic类型 --> <bean id="jmsTopicTemplate" class="org.springframework.jms.core.JmsTemplate"> <!-- 这个connectionFactory对应的是我们定义的Spring提供的那个ConnectionFactory对象 --> <constructor-arg ref="mqConnectionFactory" /> <!-- pub/sub模型(发布/订阅) --> <property name="pubSubDomain" value="true" /> </bean>
// 调用MQ服务,发送一条消息jmsTemplate.send("bos_sms", new MessageCreator() {@Overridepublic Message createMessage(Session session) throws JMSException {MapMessage mapMessage = session.createMapMessage();mapMessage.setString("telephone", model.getTelephone());mapMessage.setString("msg", msg);return mapMessage;}});
阅读全文
0 0
- 【ActiveMQ】ActiveMQ的使用
- ActiveMQ 的的使用
- 使用ActiveMQ的BLOBMessage
- ActiveMQ的使用(一)
- ActiveMQ的使用1
- activemq的安装使用
- ActiveMQ的使用
- ActiveMQ 的使用
- ActiveMQ的基本使用
- ActiveMQ的简单使用
- ActiveMq的简单使用
- activeMQ的使用
- ActiveMQ的简单使用
- activeMq-CPP的使用
- Activemq的简单使用
- ActiveMQ的简单使用
- ActiveMQ的使用教程
- ActiveMq--P2P的使用
- 文章标题
- malloc,alloc,realloc之间的相似与区别
- 图片上传服务器-回显
- 编辑距离问题
- day19笔记
- activemq的使用
- 移动端viewport的理解
- kmp算法
- 【视频编码格式】全面解析
- day20笔记
- 堆排序
- mysql sql语句大全
- 线性顺序表
- ②看视频学习NDK之C函数指针