Springboot Starter 是如何工作的? 发表于 2024-09-05 分类于 Java 本文字数: 3.5k 阅读时长 ≈ 3 分钟 Springboot Starter 是 Springboot 项目的一部分,它提供了一种便捷的方式来引入一组相关的依赖和自动配置,以简化 Spring 应用程序的开发。这篇文章,我们将详细分析 Springboot Starter 的实现原理、示例以及其优缺点。 阅读全文 »
Hashtable 和 HashMap的 keyset 有什么区别? 发表于 2024-09-04 更新于 2024-09-03 分类于 Java 本文字数: 5.7k 阅读时长 ≈ 5 分钟 Hashtable 和 HashMap 是 Java 中最常用的两种哈希表实现,它们都可以用于存储键值对,但在实现细节和使用上有一些显著差异。这篇文章我们从原理、源码来等方面详细的分析它们,以及它们的 `keySet` 有哪些区别。 阅读全文 »
什么是乐观锁?什么是悲观锁? 发表于 2024-09-03 更新于 2024-09-02 分类于 Java 本文字数: 5.1k 阅读时长 ≈ 5 分钟 悲观锁和乐观锁是两种常见的并发控制机制,用于处理多线程或多进程环境中的数据访问冲突问题。它们在数据库系统、分布式系统和多线程编程中都有广泛应用。这篇文章我们来分析下他们的原理以及使用场景。 阅读全文 »
什么是 Proxy Server?它是如何工作的? 发表于 2024-09-01 更新于 2024-09-02 分类于 Java 本文字数: 2.9k 阅读时长 ≈ 3 分钟 代理服务器(Proxy Server)是一个中间服务器,位于客户端和目标服务器之间。它代表客户端向目标服务器发送请求,并将目标服务器的响应返回给客户端 阅读全文 »
Maven vs Gradle,如何选择? 发表于 2024-08-29 分类于 Java 本文字数: 4.1k 阅读时长 ≈ 4 分钟 Maven 和 Gradle 是两种常用的 Java构建工具,它们在构建、依赖管理和项目自动化方面各有优缺点。这篇文章我们将对它们的原理、优缺点进行分析,并讨论如何在不同场景下选择合适的工具。 阅读全文 »
Linux的 Namespace 和 Cgroups,如何实现资源隔离? 发表于 2024-08-28 分类于 Linux 本文字数: 8.9k 阅读时长 ≈ 8 分钟 Linux 内核提供了多种机制来实现系统资源的隔离和管理,这篇文章,我们来详细分析两种最为关键的技术:Namespace 和 Cgroups。 阅读全文 »
Python Sets详解! 发表于 2024-08-27 更新于 2024-08-26 分类于 Python 本文字数: 6.9k 阅读时长 ≈ 6 分钟 在Python编程中,集合是一种无序的、可迭代的、可变的数据类型,并且不包含重复元素。集合用 `{}` 表示(值用大括号括起来)。 阅读全文 »
Peer to Peer架构详解! 发表于 2024-08-26 分类于 系统架构 本文字数: 3.6k 阅读时长 ≈ 3 分钟 在分布式架构中,我们经常会听到 Peer-to-Peer的架构,比如 SpringCloud中的 Eureka注册中心,RocketMQ中的 NameServer,那么,什么是 Peer-to-Peer?这篇文章,我们将深入探讨了 P2 P网络的细节、其特性、优点和缺点以及关键应用领域。 阅读全文 »
RocketMQ Tag 详解! 发表于 2024-08-24 分类于 RocketMQ 本文字数: 4.3k 阅读时长 ≈ 4 分钟 Tag 是 RocketMQ 提供的一种消息过滤机制,允许生产者在发送消息时指定一个或多个标签,消费者则可以根据这些标签来选择性地消费消息。这篇文章,我们将详细介绍 RocketMQ 中 Tag 的原理、源码分析以及示例。 阅读全文 »
如何设计一个事件驱动系统? 发表于 2024-08-22 更新于 2024-08-27 分类于 系统架构 本文字数: 5k 阅读时长 ≈ 5 分钟 什么是事件驱动架构?事件驱动架构在实际业务中有什么重要的作用?这篇文章,我们来介绍一种很常见且重要的架构:事件驱动架构。 阅读全文 »