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

9.30学习

1.如何保证顺序消费

●单 topic,单partition,单 consumer,单线程消费,吞吐量低,不推荐

●如只需保证单key有序,为每个key申请单独内存 queue,每个线程分别消费一个内存 queue 即可,这样就能保证单key(例如用户id、活动id)顺序性。

2.(线上)如何解决积压消费

●修复consumer,使其具备消费能力,并且扩容N台

●写一个分发的程序,将Topic均匀分发到临时Topic中

●同时起N台consumer,消费不同的临时Topic

3.如何避免消息积压

●提高消费并行度

●批量消费

●减少组件IO的交互次数

●优先级消费

4.如何设计消息队列

需要支持快速水平扩容,broker+partition,partition放不同的机器上,增加机器时将数据根据topic做迁移,分布式需要考虑一致性、可用性、分区容错性

●一致性:生产者的消息确认、消费者的幂等性、Broker的数据同步

●可用性:数据如何保证不丢不重、数据如何持久化、持久化时如何读写

●分区容错:采用何种选举机制、如何进行多副本同步

●海量数据:如何解决消息积压、海量Topic性能下降

性能上,可以借鉴时间轮、零拷贝、IO多路复用、顺序读写、压缩批处理


http://www.kler.cn/news/327362.html

相关文章:

  • 南沙C++信奥赛陈老师解一本通题: 1963:【13NOIP普及组】小朋友的数字
  • Redis 性能优化的高频面试题及答案
  • HAProxy 安全配置
  • 正则表达式中的贪婪模式和非贪婪模式
  • [大语言模型-论文精读] 大语言模型是单样本URL分类器和解释器
  • 相互作用的检索增强 3D 分子生成扩散模型 - IRDiff 评测
  • 滚雪球学MySQL[5.1讲]:事务与并发控制
  • 如何使用ssm实现钢铁集团公司安全管理系统的构建与实现
  • 基于小步大步法(BSGS)的同态加密多项式求值
  • 滚雪球学Oracle[2.1讲]:Oracle数据库安装与配置
  • 新品上市!智能无线接入型路由器ZX7981EP,WIFI6技术双频频段
  • 解锁微信小程序新技能:ECharts动态折线图搭配WebSocket,数据刷新快人一步!
  • 数据库 - Mongo数据库
  • 第166天:应急响应-拒绝服务钓鱼指南DDOS压力测试邮件反制分析应用日志
  • ubuntu server 常用配置
  • Spring面试内容大纲
  • ios内购支付-支付宝APP支付提现
  • 互联网前后端分离的开发场景,一般会员和数据权限的判断是放在前端还是后端?
  • 【08】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-Scroll容器与Tabs组件
  • 大屏娱乐体验新标杆:海信发布全新一代AI电视
  • 解决MySQL命令行中出现乱码问题
  • Mysql高级篇(中)——多版本并发控制 MVCC
  • 字体文件压缩
  • 深入 Spring RestTemplate 源码:掌握 HTTP 通信核心技术
  • dockerfile部署springboot项目(构建镜像:ebuy-docker:v1.0)
  • Java高效编程(7):消除过时的对象引用
  • 【计算机网络】详解HTTP请求和响应格式常见请求方法Header报头响应报文状态码URL
  • \?拉普拉斯到底在讲什么\?控制理论\?倒立摆/
  • Linux: network: /proc/net/sockstat 解读
  • 163页制造业变革转型:营销/服务/研发/供应链/制造/质量/财务