比如说:我项目的服务接口,需要给调用者返回一个是否成功结果。因为可能并发量比较大,用rocketmq来流量削峰。我将生产者写入到接口中,每次调这个接口,生产者发送消息,消费者监听,并处理接口的实际业务。但是如何返回给生产者处理结果?我没找到具体代码方法。
还是说我上面做的方法,是不可行的?求解答
java rocketmq 生产者如何取得消费者的消费结果
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答
- little_how 2018-05-31 02:27关注
首先要明白消息队列是用于什么场景的;
绝大部分用于削峰和解耦,也有用于处理分布式事务!
然后再想想削峰的目的是什么,削峰是用于当应用处理不过来过大的并发请求时,将请求存于队列中,用单个或多个消费者来处理请求!这时候想要拿到请求怎么办呢?
1.每个消费者处理完成请求,再发送消息到消息队列中,你的生产者那方再实现消费者来消费这些处理结果信息;
然后处理你的逻辑!
2.将处理结果存于缓存等高性能组件中,通过轮询的方式获取任务处理结果不管什么方式,你的请求方都应该是在你将请求消息发到队列后立即返回的!消息结果可以用推送的方式告知(移动端的话),也可以让请求方每个几秒轮询一次
处理结果;希望对你有帮助...
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 2
悬赏问题
- ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
- ¥15 微信公众号自制会员卡没有收款渠道啊
- ¥15 stable diffusion
- ¥100 Jenkins自动化部署—悬赏100元
- ¥15 关于#python#的问题:求帮写python代码
- ¥20 MATLAB画图图形出现上下震荡的线条
- ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
- ¥15 perl MISA分析p3_in脚本出错
- ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
- ¥15 ubuntu虚拟机打包apk错误