招商银行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`结果里面的字段该如何理解,这篇文章,我们将详细分析。 阅读全文 »
Java 语法糖,你被甜过几次? 发表于 2024-09-10 更新于 2024-09-09 分类于 Java 本文字数: 2.4k 阅读时长 ≈ 2 分钟 在实际开发中,我们经常会用到 `127.0.0.1` 和 `localhost`,那么,两者到底有什么区分呢?这篇文章,我们来详细了解 `127.0.0.1` 和 `localhost`。 阅读全文 »
127.0.0.1 和 localhost,你真的清楚吗? 发表于 2024-09-09 分类于 Java 本文字数: 1.8k 阅读时长 ≈ 2 分钟 在实际开发中,我们经常会用到 `127.0.0.1` 和 `localhost`,那么,两者到底有什么区分呢?这篇文章,我们来详细了解 `127.0.0.1` 和 `localhost`。 阅读全文 »
Springboot Starter 是如何工作的? 发表于 2024-09-05 分类于 Java 本文字数: 3.5k 阅读时长 ≈ 3 分钟 Springboot Starter 是 Springboot 项目的一部分,它提供了一种便捷的方式来引入一组相关的依赖和自动配置,以简化 Spring 应用程序的开发。这篇文章,我们将详细分析 Springboot Starter 的实现原理、示例以及其优缺点。 阅读全文 »