如果让你写一个消息队列,该如何进行架构设计? 2022-01-28T14:21:26+08:00 可以从下几个角度来考虑一下: 首先这个 mq 得支持可伸缩性吧,就是需要的时候快速扩容,就可以增加吞吐量和容量,那怎么搞?设计个分布式的系统呗,参照 Aaron 1 分钟阅读
如何保证消息的可靠性传输?(处理消息丢失的问题) 2022-01-27T14:21:26+08:00 问题分析 数据的丢失问题,可能出现在生产者、MQ、消费者中,咱们从 RabbitMQ 和 Kafka 分别来分析一下吧。 RabbitMQ 生产者弄丢了数据 生产者将数据发送到 RabbitMQ 的时候,可能数 Aaron 5 分钟阅读
如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理? 2022-01-27T14:21:26+08:00 大量消息在 mq 里积压了几个小时了还没解决 几千万条数据在 MQ 里积压了七八个小时,从下午 4 点多,积压到了晚上 11 点多。这个是真实遇到过的一个场景,确实 Aaron 2 分钟阅读
如何保证消息的顺序性? 2022-01-26T14:21:26+08:00 线上系统场景案例 以前做过一个 mysql binlog 同步的系统,压力还是非常大的,日同步数据要达到上亿,就是说数据从一个 mysql 库原封不动地同步到另一个 mysql 库里面去(m Aaron 2 分钟阅读
如何保证消息不被重复消费?(如何保证消息消费的幂等性) 2022-01-25T14:21:26+08:00 首先,比如 RabbitMQ、RocketMQ、Kafka,都有可能会出现消息重复消费的问题,正常。因为这问题通常不是 MQ 自己保证的,是由我们开 Aaron 3 分钟阅读
如何保证消息队列的高可用? 2022-01-24T14:21:26+08:00 RabbitMQ 的高可用性 RabbitMQ 是比较有代表性的,因为是基于主从(非分布式)做高可用性的,我们就以 RabbitMQ 为例子讲解第一种 MQ 的高可用性怎么实现。 RabbitMQ 有三种模式:单机模 Aaron 5 分钟阅读
Feign 声明式HTTP客户端 2022-01-01T14:21:26+08:00 1、定义 Feign是Netflix开源的声明式HTTP客户端 全局代码<全局属性<细粒度代码<细粒度属性 Feign常见问题总 Aaron 1 分钟阅读
单体架构与微服务架构 2022-01-01T14:21:26+08:00 一、单体架构 1、优点: 架构简单 开发、测试、部署方便 2、缺点: 复杂性高 部署慢,频率低 扩展能力受限 阻碍技术创新 二、微服务 1、简单定义: 微服务架 Aaron 2 分钟阅读
排序算法 2021-12-02T14:21:26+08:00 1、快速排序 算法步骤 从数列中挑出一个元素,称为 “基准”(pivot); 重新排序数列,所有元素比基准值小的摆放在基准前 Aaron 1 分钟阅读
刷算法题的感悟 2021-04-01T14:21:26+08:00 刷leetcode算法题的一点感悟 1. 开始很重要 先开始,先开始 不要说明天一定,下周一定,不要觉得自己的基础不够事先要补充算法/数据结构再开始, Aaron 1 分钟阅读