Kafka是如何保证消息不丢失的
转载自 https://mp.weixin.qq.com/s/O1lKrO3zl0hA-mlb79gw7Q 既然使用消息中间件就一定涉及到一个重要问题,如何保证消息不丢失?使用Kafka也不例外。 简单来说,一条消息会经历如下三个位置的流转:生产者、服务端、消费者。那么如何保证消息不丢失也要从三个角度来考虑:生产者发送消息、服务端存储消息、消费者消费消息。 ...
转载自 https://mp.weixin.qq.com/s/O1lKrO3zl0hA-mlb79gw7Q 既然使用消息中间件就一定涉及到一个重要问题,如何保证消息不丢失?使用Kafka也不例外。 简单来说,一条消息会经历如下三个位置的流转:生产者、服务端、消费者。那么如何保证消息不丢失也要从三个角度来考虑:生产者发送消息、服务端存储消息、消费者消费消息。 ...
全文建立在MySQL的存储引擎为InnoDB的基础上先看一条SQL如何入库的: 这是一条很简单的更新SQL,从MySQL服务端接收到SQL到落盘,先后经过了MySQL Server层和InnoDB存储引擎。 Server层就像一个产品经理,分析客户的需求,并给出实现需求的方案。 InnoDB就像一个基层程序员,实现产品经理给出的具体方案。 在MySQL”分析需求,实现方案“的过程中,还夹杂着内存操作和磁盘操作,以及记录各种日志。 他们到底有什么用处?他们之间到底怎么配合的?MySQL又为什么要分层呢?InnoDB里面的那一块Buffer ...
1. 问题背景和思考1.1 问题背景在一次排查线上告警的过程中,突然发现一个链路信息有点不同寻常(这里仅展示测试复现的内容): 在机器中可以清楚的发现“2022-08-02 19:26:34.952 DXMsgRemoteService ”这一行日志信息并没有携带TraceId,导致调用链路信息戛然而止,无法追踪当时的调用情况。 1.2 问题复现和思考在处理完线上告警后,我们开始分析“ ...
1. dto枚举校验 @Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE}) @Retention(RUNTIME) @Documented @Constraint(validatedBy = ValueOfEnumValidator.class) public @interface ...
** 生产环境主机开启Docker远程连接必须配置安全访问!** 起因 事情的起因是这样的,因为需要给自己的服务器搭建DevOps环境(kuboard+Jenkins)。Jenkins采用k8s部署,需要用到远程的docker主机。因此稀里糊涂地开了服务器的docker远程连接。结果悲催了,被植入了挖矿程序。 症状 很快发现,开了远程连接的服务器无法访问。变得特别卡。cpu占用100%。好不容易登录cockpit后,发现有个cmake的服务一直启动失败(服务器是arm64),而且多了几个叫zzhX的服务。 ...