第七章
RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。具有以下特点:
能够保证严格的消息顺序
提供丰富的消息拉取模式
高效的订阅者水平扩展能力
实时的消息订阅机制
亿级消息堆积能力
文档1:http://rocketmq.apache.org/docs/rmq-arc/
文档2:http://rocketmq.apache.org/docs/quick-start/
文档3:https://github.com/alibaba/spring-cloud-alibaba/wiki/RocketMQ
window 本地安装参考:https://blog.csdn.net/bbc2005/article/details/85218497
可视化管理平台参考:https://www.jianshu.com/p/63f4062b661d
本章节介绍stream 与mq 的集成
(1)新建 rocket-mq-bind
(2)配置 文件
server.port=8111
spring.cloud.stream.rocketmq.binder.name-server=localhost:9876
spring.cloud.stream.bindings.outputPro.destination=test-topic
spring.cloud.stream.bindings.outputPro.content-type=application/json
spring.cloud.stream.bindings.inputC.destination=test-topic
spring.cloud.stream.bindings.inputC.content-type=text/plain
spring.cloud.stream.bindings.inputC.group=test-group1
spring.cloud.stream.rocketmq.bindings.inputC.consumer.orderly=true
#spring.cloud.stream.bindings.input2.destination=test-topic
#spring.cloud.stream.bindings.input2.content-type=text/plain
#spring.cloud.stream.bindings.input2.group=test-group2
#spring.cloud.stream.rocketmq.bindings.input2.consumer.orderly=false
#spring.cloud.stream.rocketmq.bindings.input2.consumer.tags=tagStr
#spring.cloud.stream.bindings.input2.consumer.concurrency=20
(3)自定义Binding
Binding(4)消费者
消费者(5)生产者
生产者(6)启动类 加入 @EnableBinding({CustomBinding.class})
(7)启动项目,访问http://localhost:8111/send?content=tom
(8)这样,就实现同步消息了,下面将实现延迟消息,配置文件改动一下
spring.cloud.stream.bindings.outputPro.destination=test-topic
spring.cloud.stream.bindings.outputPro.content-type=application/json
spring.cloud.stream.rocketmq.bindings.outputPro.producer.sync=true
spring.cloud.stream.bindings.inputC.destination=test-topic
spring.cloud.stream.bindings.inputC.content-type=text/plain
spring.cloud.stream.bindings.inputC.group=test-group1
(9)sendDelay,DELAY取自 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h,3=10s
sendDelay(10)访问 http://localhost:8111/sendDelay?content=tom
延迟消息项目地址:https://github.com/renzheyizhe/demo/tree/master/rocket-mq-bind
网友评论