美文网首页
rokectMq 消息发送超长的问题

rokectMq 消息发送超长的问题

作者: 时光会把你雕刻成你应有的样子 | 来源:发表于2019-07-08 14:51 被阅读0次

最近公司项目使用了 Apache rokectMq 进行消息发送,本人也是第一次接触mq。

领导说要处理下mq消息发送超长。需要进行消息压缩。然而我就进行各种百度,查看相关的问题。

可惜这类问题太少就几个代码片段提供。

后续我根据网上提供的代码段,阅读了下mq发送消息的源码

com.alibaba.rocketmq.client.producer.DefaultMQProducer类寻找77行send发送消息。

img

com.alibaba.rocketmq.client.impl.producer.DefaultMQProducerImpl类寻找391行

img

在继续跟进send方法,最后进入到sendDefultImpl,见名知意,也就是发送(消息)默认的实现方法

img

继续跟进方法进入如下代码

img

一看就理解这方法了吧。尝试压缩消息。继续跟进方法看一看

img

返回值是 true false ,参数是消息,

1.获得消息体

2.进行if判断  消息不为空并且消息长度大于等于其长度(compressMsgBodyOverHowmuch:消息 Body 超过多大开始压缩)

3.就开发进行压缩操作,主要压缩方法就是 UtilAll.compress这方法。想看的继续跟进了。在这里我就不附代码了。

总结:发现rokectmq已经帮助考虑了这点。本人对于rokectmq了解不深,也就刚刚使用阶段。如有大神发现此文章哪里解释不对。望提供其见解,让我摆脱迷茫。谢谢。

相关文章

  • rokectMq 消息发送超长的问题

    最近公司项目使用了 Apache rokectMq 进行消息发送,本人也是第一次接触mq。 领导说要处理下mq消息...

  • RokectMQ

    RokectMQ很好的支持了事务消息发布,保证了事件发布与业务的一致性。 支持3种消息发布方式:同步、异步、单向(...

  • RabbitMQ面试题:如何解决消息的顺序问题? --- 202

    RabbitMQ的消息顺序问题,需要分三个环节看待,发送消息的顺序、队列中消息的顺序、消费消息的顺序。 发送消息的...

  • 设计模式之桥接模式

    场景问题 发送消息 现在我们要实现这样一个功能:发送消息。从业务上看,消息又分成普通消息、加急消息和特急消息多种,...

  • MEET产品思考-重新发送消息

    问题背景: 在设计im聊天的无网&网络状况不佳时,遇到了消息因为网络问题无法发送消息,在重新发送消息时应该如何设计...

  • RocketMQ-消息发送

    简介 本文通过问题入手,介绍下RocketMQ的消息发送逻辑是怎么样的。消息发送的大体逻辑图如下: 问题 首先我们...

  • 08.Objective-C 消息机制

    问题 消息机制的三个阶段 1.消息机制发送消息阶段-消息发送2.消息机制动态方法解析阶段 -动态解析3.消息机制消...

  • 客户发送消息

    客户发送消息流程,在ppmessage中管理者可以设置客户发送消息流程,这有助于回答访客问题,也能对预测问题进行回...

  • 面试官问我如何保证Kafka不丢失消息?我哭了!

    生产者丢失消息的情况 生产者(Producer) 调用send方法发送消息之后,消息可能因为网络问题并没有发送过去...

  • 发送消息

    1 消息设置 普通,需回复型,拒绝型 2 发送消息 2-1 发送 显示勾选人数,及他们的状态。 例子: 总共勾选1...

网友评论

      本文标题:rokectMq 消息发送超长的问题

      本文链接:https://www.haomeiwen.com/subject/mebohctx.html