当前位置: 首页 > news >正文

大型网seo快速推广

大型网,seo快速推广,摄影网站源码,app网站制作要多少钱前言 这篇给大家讲普通消息和批量消息,主要配合代码进行讲解,关于RocketMQ的基础知识已经在上篇给大家讲过需要回顾的点击下面这个链接去看 RocketMQ基础知识 普通消息 普通消息其实就很简单,是Apache RocketMQ中最基础的消息形式&#x…

前言

这篇给大家讲普通消息和批量消息,主要配合代码进行讲解,关于RocketMQ的基础知识已经在上篇给大家讲过需要回顾的点击下面这个链接去看

RocketMQ基础知识

普通消息

普通消息其实就很简单,是Apache RocketMQ中最基础的消息形式,区别于有特性的顺序消息、定时/延时消息和事务消息。普通消息一般应用于微服务解耦、事件驱动、数据集成等场景,这些场景大多数要求数据传输通道具有可靠传输的能力,且对消息的处理时机、处理顺序没有特别要求。

在电商交易场景中,上游订单系统将用户下单支付这一业务事件封装成独立的普通消息并发送至RocketMQ服务端,下游按需从服务端订阅消息并按照本地消费逻辑处理下游任务。每个消息之间都是相互独立的,且不需要产生关联。

在离线的日志收集场景中,通过埋点组件收集前端应用的相关操作日志,并转发到RocketMQ。每条消息都是一段日志数据,RocketMQ不做任何处理,只需要将日志数据可靠投递到下游的存储系统和分析系统即可,后续功能由后端应用完成。

普通消息是RocketMQ基本消息功能,支持生产者和消费者的异步解耦通信。

例如下面这个代码就是普通消息:

public class Producer {public static void main(String[] args) throws Exception {//创建一个生产者,指定生产者组为 sanyouProducerDefaultMQProducer producer = new DefaultMQProducer("sanyouProducer");// 指定NameServer的地址producer.setNamesrvAddr("192.168.200.143:9876");// 启动生产者producer.start();//创建一条消息 topic为 sanyouTopic 消息内容为 java日记Message msg = new Message("sanyouTopic", "java日记".getBytes(RemotingHelper.DEFAULT_CHARSET));// 发送消息并得到消息的发送结果,然后打印SendResult sendResult = producer.send(msg);System.out.printf("%s%n", sendResult);// 关闭生产者producer.shutdown();}}

构建的消息的topic为sanyouTopic,内容为java日记,这就是一条很普通的消息

批量消息

MQ的批量消息是指将多条小的消息合并成一个批量消息,然后一次发送出去。

这种批量发送的好处是可以减少网络IO,提升吞吐量。在实际使用时,一个批次消息的大小不应超过1MB,但实际的最大限制是4194304字节,大概4MB。

同时,批量消息的使用也有一定限制,这些消息应该有相同的Topic,相同的waitStoreMsgOK。而且不能是延迟消息、事务消息等。

通俗易懂说就是将多个消息同时发过去,减少网络请求的次数

public class Producer {public static void main(String[] args) throws Exception {//创建一个生产者,指定生产者组为 sanyouProducerDefaultMQProducer producer = new DefaultMQProducer("sanyouProducer");// 指定NameServer的地址producer.setNamesrvAddr("192.168.1.135:9876");// 启动生产者producer.start();//用以及集合保存多个消息List<Message> messages = new ArrayList<>();messages.add(new Message("sanyouTopic", "java日记 0".getBytes()));messages.add(new Message("sanyouTopic", "java日记 1".getBytes()));messages.add(new Message("sanyouTopic", "java日记 2".getBytes()));// 发送消息并得到消息的发送结果,然后打印SendResult sendResult = producer.send(messages);System.out.printf("%s%n", sendResult);// 关闭生产者producer.shutdown();}}

多个普通消息同时发送,这就是批量消息

不过在使用批量消息的时候,需要注意以下两点

  • 每条消息的Topic必须都得是一样的

  • 不支持延迟消息和事务消息

总结

普通消息和批量消息比较简单,没有复杂的逻辑,就是将消息发送过去,在ConsumeQueue和CommitLog存上对应的数据就可以了。

联系方式

关于文章中大家有任何疑问可以通过关注公众号《编程乐学》进行留言,同时,公众号还有更多有趣的项目以及关于学习编程的笔记资料大家可以看看,欢迎大家进行留言。

http://www.dt0577.cn/news/48756.html

相关文章:

  • 个人做跨境电商网站排名推广网站
  • 包头企业网站流程优化四个方法
  • 重庆网站建设有限公司搜索引擎seo关键词优化效果
  • 盐城做网站的价格东莞市网络seo推广价格
  • 专做会议推广的网站搜索引擎seo是什么意思
  • 专业服务网站建设中山网站seo优化
  • 私人彩票网站做几年牢流量平台排名
  • 南昌网站建设模板网络公司石家庄新闻头条新闻最新今天
  • 搜狗提交网站收录入口重庆seo公司排名
  • 电子工程网站有哪些盘古搜索
  • 做外贸学网站宁波网站建设团队
  • 上传网站源码新手怎么入行sem
  • 南山网站(建设深圳信科)线上免费推广平台都有哪些
  • 网站开发 会费管理 模块太原seo关键词排名
  • 沈阳网站建设技术公司排名百度seo技术优化
  • 深圳市住房和城乡建设委员会网站唐山seo排名
  • 长沙行业网站建设费用标准北京网站优化企业
  • 网站开发虚拟主机是什么个人网站免费推广
  • 网站建设宣传推广网站要注意什么
  • 选择邯郸做网站云服务器免费
  • 济南做html5网站整合营销的最高阶段是
  • 什么是品牌vi设计怎么优化标题和关键词排名
  • 游戏开发需要什么学历常用的seo工具
  • 网站主体备案信息查询央视新闻今天的内容
  • 云南住房建设厅网站公司产品怎样网上推广
  • 二手车做的好的网站有哪些台州网站制作维护
  • 四川中成煤炭建设集团网站百度搜索风云榜电脑版
  • 山东德州网站建设哪家便宜2023疫情第三波爆发时间
  • wordpress域名修改数据库seo实战技巧
  • 广州php网站建设站长之家seo信息