19|分库分表无分库分表键查询:你按照买家分库分表,那我卖家怎么查? 你好,我是大明,今天我和你来聊一聊分库分表下的一种特殊的查询——无分库分表键查询。 在很多业务里面,分库分表键都是根据主要查询筛选出来的。那么就会有这样一个问题,那些不怎么重……
Continue reading
20|分库分表容量预估:分库分表的时候怎么计算需要多少个库多少个表? 你好,我是大明。今天我们来聊一下如何分库分表中确定容量的问题。 在分库分表的面试中,基本上面试官都会问你,你究竟分了几个库分了几个表。这是因为面试官比较关注数据库的数据量问题……
Continue reading
21|数据库综合应用:怎么保证数据库的高可用、高性能? 你好,我是大明。 我很早就注意到,很多人在平时工作中就是设计一下表结构和索引。好一点的可能还会有一些查询优化的经验,也有少数人做了很多跟数据库有关的事情,但是没办法把它们系统组织起来,给面……
Continue reading
22|消息队列:消息队列可以用来解决什么问题? 你好,我是大明。 从今天开始我们要学习一个新的主题——消息队列。一直以来,消息队列都是业界用于构建高并发、高可用系统的利器。即便是简单的业务开发,也可以通过消息队列的解耦、异步特性来提高性能和可用……
Continue reading
23|延迟消息:怎么在 Kafka 上支持延迟消息? 你好,我是大明。今天我们来讨论一个在消息队列面试中非常热的话题——延迟消息。 延迟消息在 Kafka 面试里面是非常热门的,其他消息队列多少也会问,但是不如 Kafka 问得频繁。因为 Kafka 不支持延迟消息是大家都知道的。但是偏偏 Kafka……
Continue reading
24|消息顺序:保证消息有序,一个 topic 只能有一个 partition 吗? 你好,我是大明。我们今天接着学习消息队列的新主题——有序消息。 在消息队列的相关的面试里面,有序消息和消息不丢失、消息重复消费是三个并列的面试热点,同时在实践中也很容易遇到要求使用有序消息的……
Continue reading
25|消息积压:业务突然增长,导致消息消费不过来怎么办? 你好,我是大明。今天我们来学习消息队列中消息积压问题的解决办法。 我们说的消息积压是指消息生产速率大于消费速率,所以消息会在broker上存放着。消息积压可能会导致消息要等很久才会被消费……
Continue reading
26|消息不丢失:生产者收到写入成功响应后消息一定不会丢失吗? 你好,我是大明。今天我们来学习消息队列中的新主题——消息丢失。 和消息丢失相对应的概念叫做可靠消息,这两者基本上指的就是同一件事。在实践中,一旦遇到消息丢失的问题,是很难定位的。从……
Continue reading
27|重复消费:高并发场景下怎么保证消息不会重复消费? 你好,我是大明。今天我们来讨论一个在消息队列里面非常常见的话题——重复消费。 通过前面几节课的学习,我相信你已经发现了,很多方案都会引起一个问题:消息重复发送或者重复消费。而解决的思路基本……
Continue reading
28|架构设计:如果让你设计一个消息队列,你会怎么设计它的架构? 你好,我是大明。今天我们学习消息队列的架构设计,也就是如果让你设计一个消息队列,你会怎么做。 这个话题在面试中属于很难的一类,它要求你不仅要对 Kafka 本身有很深刻的理解,也要对分布式系……
Continue reading