Rocket MQ 发送消息
@(消息队列)[RocketMQ, 消息]
使用阿里巴巴的Rocket MQ发送消息的SpringBoo项目
- 使用之前请现在阿里云申请消息队列并创建消息TOPIC、Producer和Consumer
启动
下载:
https://github.com/helloworlde/SpringBoot-RocketMQ.git修改配置文件:修改
application.properties,填入相应的信息1
2
3
4
5
6spring.rocketmq.ONSAddresses=消息队列地址
spring.rocketmq.accessKey=AccessKey
spring.rocketmq.secretKey=SercetKey
spring.rocketmq.topic=TOPIC
spring.rocketmq.producerId生产者
spring.rocketmq.consumerId=订阅者编译:
gradle build启动:
gradle bootrun
API
请求URL:
http://localhost:8080/sendMessage
请求方式:
POST
参数:
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| body | 是 | String | 消息所携带的数据,可以是对象的JSON串 |
| key | 是 | String | 32位key |
| tags | 否 | String | Message Tag,用于过滤订阅者过滤消息 |
| method | 否 | String | 消息发送方式,共有三种:同步发送:SYNCHRONOUS,异步发送:ASYNCHRONOUS, 单向发送:ONE_WAY ,默认使用同步发送方式发送消息 |
| type | 否 | String | 消息类型,共有三种:顺序消息:ORDER,延时消息:DELAY,定时消息:TIMING,默认发送顺序消息 |
| delayTime | 否 | long | 消息发送延时时间,单位是毫秒 |
| startDeliveryTime | 否 | String | 定时消息发送时间,必须是yyyy-MM-dd HH:mm:ss格式 |
顺序消息 Body
1 | { |
延时消息 Body
1 | { |
定时消息 Body
1 | { |
返回示例
- 同步方式发送时返回消息信息,异步和单向方式返回值为空
1
2
3
4{
"messageId": "0A00004541843624AEC09C820EAD0000",
"topic": "Topic"
}
返回参数说明
| 参数名 | 说明 |
|---|---|
| messageId | 所发送消息ID |
| topic | 所发送消息 Topic |