高空之盾:构建系统韧性的高可用投递方案设计

【信息科学与工程学】【数据中心】 第四篇 低空智算中心 电信运营商通过 ​​“技术-平台-生态”三维协同​基建层​:以通感一体化基站构建“空天地一体”网络,突破传统覆盖瓶颈;​平台层​:通过星云/星巡等平台实现空域智能调度,降低管理复杂度;​生态层​:联合产业联盟推动标准化,加速场景落地(如物流、巡检、安防)。​未来重点​:需突破高频器件集成度、跨域数据安全流通等瓶颈,实现从“通感一体”向“通感算智融合”的跃迁。 阅读详情

系列文章目录


前言

MQ一直是系统开发中必不可少的组件,众所周知MQ有流量削峰,解耦,异步 三大特性。但是既然是第三方组件,那么如何保证消息投递性的可靠性,是我们开发人员必须要研究的。

一、如何保证消息投递的可靠性?

所谓消息投递的可靠性就是保证消息生成之后能准确的投递到消费者,并被消费者消费。而消息队列一般都是由生成者Producer,消费者Consumer,消费存放的地方Broker三个组成。所以讨论消息投递的可靠性,实则就是讨论如何保证消息在这三部分不丢失的问题。

二、什么是生产端的可靠性投递?

  • 保障消息的成功发出
  • 保障MQ节点的成功接收
  • 发送端接收到MQ节点(Broker)确认应答
  • 完善的消息补偿机制
    • 如何保障100%投递成功需要有补偿机制
    • 生产端在投递消息的时候失败了的处理机制
    • 生产端消息投递到MQ,但在MQ给生产返回应答时出现网络闪断这就导致生产端不知道消息是否送达

三、业界常用的高可靠投递方案

  • 消息落库,对消息状态进行标记

    • 将消息发送状态落入DB中,比如发送中,发送成功
    • 对于没有发送成功的状态进行轮询检查,全部重新发送
    • 重新发送的消息也要进行一个最大异常重发次数的设置,比如3-5次,如果多次都不成功就要看消息体有什么问题,消息就不再重复发送,随后人工检查处理
  • 消息的延迟投递,做二次确认,回调检查

消息落库,对消息状态进行标记

就拿我们的支付业务来说,首先我们需要生成一个订单,然后将这个订单先保存到数据库里面去并给他一个初始的状态,然后调用第三方的渠道进行支付,并再次更新订单的状态。支付一般都是异步支付,所以最终的结果还是要等到支付渠道通知给我们,再次更新状态。这样做的目的就是保证数据不丢失,不能等调用第三方之后再进行落库,因为网络永远是不可靠的,如果在这个过程中出现超时,或者第三方服务挂掉了,那我们的数据就找不到了。

消息的延迟投递,做二次确认,回调检查

这个也很好理解,我们可以通过回调的结果来进行相对应的处理,如果回调结果是失败了,我们就可以进行再次投递,但是需要限制次数,不然就是浪费资源。但是这种重试机制会导致幂等性问题,这个我们会在接下来的章节去讲解。

CMU开源NavRL:深度强化学习如何破解无人机动态避障难题? 卡内基梅隆大学(CMU)开源了NavRL框架,利用深度强化学习解决无人机在复杂环境中的动态避障难题。该框架通过创新的状态表示、多目标奖励函数设计以及独立的安全屏障机制,使无人机能够通过仿真训练自主学会灵活、安全的导航策略,并成功实现从仿真到真实环境的零样本迁移。 阅读详情

相关推荐

Elsevier投稿避坑指南:Ocean Engineering论文格式要求详解(附Checklist模板)

本文详细解析Elsevier旗下期刊Ocean Engineering的投稿格式要求与常见陷阱,提供实用的Checklist模板。涵盖文章类型确认、作者贡献声明、图表规范、数据声明等关键环节,帮助研究者高效通过格式审查。特别强调LaTeX排版细节、图表分辨率要求及现代伦理声明规范,助力海洋工程领域学者顺利投稿。

weixin_33734785的博客 1478

第八篇:《Kafka Connect 与 Kafka Streams:数据集成与流处理的两种路径》

还有 exactly.once.source.support 只覆盖 Source 侧的精确一次,Sink 侧的重复仍然要靠目标系统的幂等或 DLQ 兜底——这和第七篇的结论完全一致:框架不解决语义正确性,只解决工程效率。KRaft 和 EOS 让 Kafka 内部更可靠,但 Connect 和 Streams 的分工不会因此模糊:Connect 把数据搬进来搬出去,Streams 在 Kafka 内部算,算到边界之外仍然要自己兜底一致性。判断标准只有一句话:你是在“搬数据”,还是在“算数据”。

qq_45239623的博客 344

Starlink地面终端天线对星(一)对星流程,星历下载,信标信号

starlink卫星终端对星采用机械伺服+相控阵电子扫描的混合模式,兼顾快速盲扫和高精度跟踪;对星流程分三步:冷启动与盲捕获 → 建立初始链路并下载星历 → 进入正常通信模式;

chen2jiang3的博客 2721

Kafka 跨数据中心日志同步实战:MirrorMaker 2 选型对比 + Flink 中继任务落地(双中心互备与消费者组隔离避坑)

两个数据中心如何做到日志数据对等?本文对比 MirrorMaker 2 与自研 Flink 中继的选型差异,给出双中心互备架构与中继任务完整配置:SASL 跨集群消费、对端 Redis 解析规则读取、副作用开关裁剪;重点拆解消费者组不隔离导致分区被抢占、静默缺数两大坑,附网络开通清单与 ES 对账方案。

Sayai的专栏 380

TSMaster二次开发实战:如何用Python搞定CAN/CANFD事件回调(附完整代码)

本文详细介绍了如何利用Python进行TSMaster二次开发,实现CAN/CANFD事件回调功能。通过实战代码演示,讲解了预发送与后处理回调的核心区别、注册流程、资源管理及性能优化技巧,帮助工程师高效构建自动化测试与数据监控应用。

star的博客 667

贝加莱Automation Studio 4.10安装保姆级教程:从官网下载到解决.Net 3.5报错

本文提供贝加莱Automation Studio 4.10的详细安装教程,涵盖从官网下载到解决.Net 3.5报错的全过程。特别针对工业自动化开发环境中常见的.Net Framework 3.5安装问题,提供多种经过验证的解决方案,包括控制面板安装、DISM命令离线安装和手动下载安装包等方法,帮助工程师顺利完成PLC开发环境的搭建。

weixin_30955617的博客 709

Kafka4.4安装配置详细说明,配JDK21

目的:现在 Kafka 是 PLAINTEXT,任何能连上 9092 的 IP 都能建/删 topic、读写所有数据。要做三件事:① 给他们建账号 ② 建好他们要推的 topic ③ 防火墙白名单放行他们的 IP。目标:把 9092 / 9093 加入端口黑名单,让「白名单 IP 仍能访问、其他 IP 被拒绝」。(记下来,后面所有管理命令的 admin-client.properties 都要用它)。修复后客户端立即返回 topic,端到端(建 topic → 生产 → 消费)全部通过。

崔崇鑫的博客,你linux/云运维工作中的百科全书。 492

【JCR一区级】鱼鹰算法OOA-CNN-LSTM-Attention故障诊断分类预测【含Matlab源码 5711期】

鱼鹰算法OOA-CNN-LSTM-Attention故障诊断分类预测 完整代码和数据,方可运行;数据可直接替换,适合小白!可提供运行操作视频!

订阅付费专栏Matlab(奶茶价版)或下载付费资源,可赠送奶茶价版付费专栏指定代码1份; 3600

Kafka 架构、消息可靠性与生产运维:从分区模型到故障治理

本文深入解析 Kafka 如何通过分区、复制与日志顺序解决大规模事件流问题,适用于云原生及后端工程师。核心在于理解其作为分布式提交日志的定位:单分区有序、跨分区需业务键协调;依赖 ISR 保障可靠性;消费组并行度受限于分区数。强调“至少一次”语义下的幂等设计与重放治理,避免盲目扩分区或依赖全局顺序。关键实践包括合理配置 acks、min.insync.replicas,分离拉取与 offset 提交,并建立可观测性与死信链路。最终,Kafka 的高可靠是副本机制、提交语义、业务幂等与运维治理的系统性组合。

m0_72376392的博客 190

如何使用 Python 爬取 58 同城招聘信息

职位名称:招聘的岗位名称,如“前端开发”、“数据分析师”等。公司名称:招聘公司的名称。薪资待遇:职位的薪资范围,通常以“面议”、“10k-20k”这样的形式表示。工作地点:公司所在的城市及具体地址。公司福利:例如五险一金、带薪年假、绩效奖金等。发布时间:职位信息的发布时间。一个典型的招聘页面 URL 格式通常如下:在这个页面上,职位信息会分页展示,爬虫需要模拟翻页,获取多个页面的招聘信息。

2201_76125261的博客 1291

“华为杯”研究生数学建模竞赛2020年-【华为杯】D题:无人机集群协同对抗(附获奖论文和MATLAB代码实现)

1.问题重述摘 要:本文针对非线性约束条件下红蓝双方无人机集群协同对抗的最优规划问题,结合贪婪队形、非线性规划、内点法、蒙特卡洛方法和全联立正交配置有限元法,构建了无人机集群协同对抗推演模型。,构建了。我们综合考虑了,和。首先分析红方在集群约束下的贪婪队形和拦截策略,然后我们基于内点法联合MATLAB和AMPL编程求解蓝方突防的非线性规划解,最后基于蒙特卡洛法对整个蓝方突防过程进行推演,得到突防概率图。通过推演,我们提出了两块的区域作为所求区域,并对蓝方的最优突防策略进行分析。

getusushu的博客 1550

一台虚拟机跑通 Hadoop → HBase → Kafka → DataX → Flink CDC:全量与增量双通道落地

单机虚拟机上串起 Hadoop、HBase、Kafka、DataX 与 Flink CDC 的完整链路:给出版本端口内存规划、启动编排脚本、DataX 全量任务与 CDC 增量作业,并附端到端排错对照表。

2301_78967866的博客 387

基于 Simulink 的单相 PWM 整流器(四象限变流器)在高铁辅助电源系统中的建模与仿真实战教程

这是一份基于 Simulink 的实战教程。在高铁牵引供电与辅助电源系统中,单相 PWM 整流器(又称四象限变流器,4QC)是极其核心的“绿色电源”枢纽。传统的二极管整流器虽然结构简单,但会导致严重的输入电流畸变和低功率因数,对电网造成极大的谐波污染。而 PWM 整流器通过高频主动控制,不仅能将单相交流电转换为平稳的直流电,还能实现输入电流正弦化、单位功率因数(PF=1)运行,并支持能量双向流动(如列车再生制动时的能量回馈)。本教程将带你从数学模型出发,搭建一套高性能的电压电流双闭环控制系统。

amy_mhd的博客 46

Kafka 与 RabbitMQ 在用户认证与权限管理场景

实现方式 | 是否支持消息顺序性 | 是否支持消息确认机制 | 是否支持分区(横向扩展) | |--------------------|------------------|------------------|------------------------| | Kafka | 支持 | 支持 | 支持 | | RabbitMQ | 不支持(默认) | 支持 | 不支持 |然而需要注意的是,RabbitMQ 的默认模式下不支持按分区进行数据分发,默认采用轮询的方式向所有消费者分配任务。

wuchangjian的专栏 115

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Kafka 消费者 poll() 流程与原理详解

Kafka Consumer 的poll()不只是简单的“拉取消息”,而是消费者运行过程的核心驱动入口。poll()↓Metadata / Group 协调↓Heartbeat↓↓↓Broker↓↓业务处理↓Offset 提交理解poll()的工作机制,可以帮助排查 Consumer Lag、消费延迟、频繁 Rebalance、处理超时以及消费吞吐不足等问题。控制一次poll()返回多少消息,而控制业务处理两次poll()之间允许的最大时间。

虽非技冠群英首,愿与同道共长歌; 大鹏一日同风起,扶摇直上九万里; 563

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

消息队列入门:RabbitMQ 与 Kafka 核心概念与运维要点

BIOS→GRUB→内核→systemd→target 全链路解读,root 密码忘了解锁、文件系统损坏修复、单用户模式与救援模式实战,服务器起不来时的救命指南。

2502_91473995的博客 335

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

消息队列选型对比:RabbitMQ vs RocketMQ vs Kafka

做后端开发的,几乎没有不用消息队列的。解耦、异步、削峰,这三大作用谁都知道。但真到了选型的时候,到底选哪个?RabbitMQ、RocketMQ还是Kafka?这篇文章结合我自己的实际项目经验,把这三个主流消息队列做个对比,说说各自适合什么场景,不适合什么场景。不是教科书式的参数对比,都是踩过坑之后的实战总结。最后再总结一下:· RabbitMQ:功能丰富、可靠性高,适合复杂业务场景· RocketMQ:事务消息强,国内项目首选· Kafka:吞吐量最高,适合大数据和日志场景。

244

Kafka 3.9.1 三节点集群部署方案(ZooKeeper 模式)

本文采用 ZooKeeper 模式部署 Kafka 三节点集群:集群元数据(Topic、分区、副本分配、ACL、controller 归属)存放在独立 ZooKeeper 集群的 znode 下。ZooKeeper 必须在 Kafka 之前完成部署并确认多数派可用,否则 Kafka 启动后会反复重连。示例:日写入 200GB,副本数 3,节点数 3,保留 7 天。需要端口放通与关闭防火墙中选择,根据实际环境进行调整。取值 1/2/3,两者相互独立,不可混用。为占位符,部署前替换为实际密码。

虽非技冠群英首,愿与同道共长歌; 大鹏一日同风起,扶摇直上九万里; 335

Kafka 分层存储落地指南:冷 Segment 自动落到 RustFS 对象存储

Kafka 分层存储(KIP-405)3.9 起生产可用,但 Apache Kafka 不带任何存储后端实现,落地要自己装 RemoteStorageManager 插件。本文用 Aiven 开源 RSM 插件把远程层接到自建的 RustFS(S3 兼容):两套 retention 的回落陷阱、broker 全量配置(含单集群 min.isr 坑)、验证三步、KIP-950 退出路径与官方限制清单,命令全部对官方文档逐字核实。

分布式存储与RustFS的博客 648

kafka集群(kafka_2.13-3.5.1.tgz)添加用户密码认证

继上篇文章zk集群添加完用户密码后,kafka集群也需要添加认证,主要方法与zk类似。

weixin_44418421的博客 224

通过 Docker 快速搭建 Kafka 开发测试环境

本文介绍通过Docker快速搭建Kafka开发测试环境的两种模式:无认证PLAINTEXT与SCRAM认证SASL_PLAINTEXT。首先生成KRaft集群ID,配置数据目录并使用docker-compose启动单机Broker。在无认证模式下初始化后,创建SCRAM用户;随后通过修改监听器协议、JAAS配置及客户端认证文件,切换至SASL认证模式。利用持久化数据卷,凭据可跨重启保留。适用于开发调试,生产环境需增强安全配置。

322

kafka指定分区消费

【代码】kafka指定分区消费。

hy_208的博客 49

Kafka 认证与安全方案完整实施指南

SSL/TLS 是 Kafka 最基本的传输层安全机制。它加密所有客户端和 Broker 之间的网络通信,包括 Producer、Consumer、Admin Client、Connect、Streams 等所有基于 TCP 的交互。SSL 可以单独使用,也可以作为 SASL 的传输底座(SASL_SSL 模式)。SASL/PLAIN 是最简单的 SASL 认证机制。客户端通过明文用户名和密码进行认证。密码在网络上以 Base64 编码传输(非加密),所以必须配合 SSL/TLS 使用,即。

虽非技冠群英首,愿与同道共长歌; 大鹏一日同风起,扶摇直上九万里; 230

Kafka 怎么保证消费只消费一次的?

一句话:Kafka 本身只保证“至少一次”,“只消费一次”要自己动手。常规业务用“手动提交 offset + 业务幂等”这对组合拳;下游是数据库可以把 offset 和业务绑进同一个本地事务;纯 Kafka 内部流转则直接上幂等生产者 + 事务。把“业务处理与 offset 提交非原子”这个根因讲透,再给对应的幂等方案,这道题就稳了。

190

从零设计一个 Agent 安全沙箱:Docker 隔离、三级风控与 Kafka 审计

本文介绍了一套面向 Agent Shell 工具的安全沙箱设计。系统首先通过 `SAFE`、`WARN`、`BLOCK` 三级策略判断命令风险:安全命令直接执行,告警级命令需要用户使用一次性令牌二次确认,危险命令则直接拦截。通过 Docker 一次性容器、非 Root 用户、只读文件系统、网络禁用及 CPU、内存、PID、超时和输出配额,实现命令的隔离执行与资源控制。同时,系统将执行结果和确认行为写入本地 Outbox,再异步投递到 Kafka,确保操作过程可审计、可追溯。该方案通过风险校验、

2301_79472735的博客 300

30. 技术专题-‌应用框架组件-消息队列-Kafka

本文以“消息包裹”为线索,详解Kafka从生产到消费的全链路流程,聚焦三大核心问题:不丢(通过acks=all、ISR副本、先处理后提交offset)、不重(开启幂等性,业务层用唯一键去重)、有序(同一分区保证顺序,通过业务key路由)。揭示Kafka“至少一次”语义下的设计哲学——不丢是基础,重复需自控,顺序靠路由。掌握这三道坎,即可应对90% Kafka面试与实战难题。

princemilo的博客 343
上一篇: JVM垃圾回收器手册:为你的项目挑选最适合的自动内存管理工具
下一篇: Kafka速度之谜:高性能的幕后秘密大揭秘
代码魔法师Sunny
博客等级 码龄10年 377粉丝 189原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值