Kafka 如何避免重复消费? 发表于 2024-09-21 分类于 消息中间件 本文字数: 2.7k 阅读时长 ≈ 2 分钟 在 Apache Kafka 中,避免重复消费是一个常见的问题,尤其是在处理消息时需要确保每条消息只被处理一次。Kafka本身提供了一些机制和最佳实践来帮助实现这一目标。这篇文章,我们来分析 7种常见的方式。 阅读全文 »
如何设计一个分布式任务调度系统? 发表于 2024-09-20 更新于 2024-09-19 分类于 系统设计 本文字数: 6k 阅读时长 ≈ 5 分钟 什么是分布式任务调度器?为什么需要分布式任务调度系统?如何设计一套分布式任务调度系统?这篇文章,我们来详细分析。 阅读全文 »
Python if-else嵌套! 发表于 2024-09-20 分类于 Python 本文字数: 3.6k 阅读时长 ≈ 3 分钟 在现实生活中,有时我们需要根据特定条件决定接下来该做什么。同样,在编程中,也会遇到需要在特定条件为真时执行特定任务的情况。在这种情况下,可以使用条件语句。Python 提供了以下条件语句: 阅读全文 »
招商银行2面:如何实现一个通知系统? 发表于 2024-09-19 分类于 系统设计 本文字数: 4.9k 阅读时长 ≈ 4 分钟 在实际工作中,我们经常会用到通知系统,比如,用户完成在线购买后,需要发送订单确认邮件、支付处理成功的短信以及包裹发货的推送通知。那么,什么是通知系统?如何设计一个通知系统?这篇文章,我们来聊一聊! 阅读全文 »
Python Dictionaries详解! 发表于 2024-09-18 更新于 2024-09-19 分类于 Python 本文字数: 7.4k 阅读时长 ≈ 7 分钟 Python Dictionaries字典是一种数据结构,用于以键值对的形式存储值。这篇文章,我们来详细分析。 阅读全文 »
布隆过滤器,你真的会用吗? 发表于 2024-09-17 分类于 Java 本文字数: 1.9k 阅读时长 ≈ 2 分钟 布隆过滤器(Bloom Filter)是一种概率型数据结构,用于判断一个元素是否属于一个集合。它特别擅长处理大规模数据的快速查找,具有高效的空间利用率和查询速度。下面是布隆过滤器的工作原理、优缺点和使用场景。 阅读全文 »
Java结构化并发和线程池,谁更香? 发表于 2024-09-15 更新于 2024-09-14 分类于 Java 本文字数: 4.8k 阅读时长 ≈ 4 分钟 StructuredTaskScope是 Java 19 引入的一个实验性特性,Java 21正式纳入java.util包,它是一个用于管理并发任务的工具,旨在提供一种更结构化的方式来管理并发任务。那么,StructuredTaskScope和传统的线程池(如ExecutorService)相比,有哪些独特的优点和缺点,这篇文章,我们来聊一聊。 阅读全文 »
Redis6 多线程中的‘多’,该如何理解? 发表于 2024-09-13 分类于 Redis 本文字数: 1.4k 阅读时长 ≈ 1 分钟 Redis 作为 NoSQL 的典型代表,一直是以单线程性能高著称,但是在 Redis 6 中,官方推出了多线程的功能,那么,Redis6 的多线程到底该如何理解?为什么官方要引进多线程呢?这篇文章,我们来聊一聊。 阅读全文 »
Linux有哪些类型,如何选择? 发表于 2024-09-12 更新于 2024-09-11 分类于 Java 本文字数: 1.6k 阅读时长 ≈ 1 分钟 Linux 是一个开源操作系统内核,基于这个内核的操作系统发行版有很多种类,不同的发行版适用于不同的使用场景和用户需求。这篇文章,我们将一起学习几种常见的 Linux 发行版及其特点、优缺点,以及在这么多版本中该如何选择。 阅读全文 »
MySQL EXPLAIN该如何分析? 发表于 2024-09-11 分类于 Java 本文字数: 2.6k 阅读时长 ≈ 2 分钟 在实际开发中,如果选择的是 MySQL 数据库,通常会使用`EXPLAIN`关键字来显示查询 SQL 的执行计划,从而帮助我们优化查询性能。那么,`EXPLAIN`是如何工作的?`EXPLAIN`结果里面的字段该如何理解,这篇文章,我们将详细分析。 阅读全文 »