高并发系统设计与演进实战指南
极客时间《高并发系统40讲》总结 第一章:高并发系统的设计理念与目标 在互联网业务飞速发展的今天,高并发系统设计已成为架构设计的核心挑战。设计一个优秀的系统,必须围绕三个核心目标展开:高性能、高可用、可扩展。 1.1 系统设计的三大目标 高性能 (High Performance) 性能是系统设计的基石。它是指系统能够以更短的响应时间处理更多的并发请求。 ...
极客时间《高并发系统40讲》总结 第一章:高并发系统的设计理念与目标 在互联网业务飞速发展的今天,高并发系统设计已成为架构设计的核心挑战。设计一个优秀的系统,必须围绕三个核心目标展开:高性能、高可用、可扩展。 1.1 系统设计的三大目标 高性能 (High Performance) 性能是系统设计的基石。它是指系统能够以更短的响应时间处理更多的并发请求。 ...
Kafka 作为一个开源的分布式事件流平台,其独特的架构设计使其在高吞吐量、低延迟和容错性方面表现卓越。特别是 2025 年 3 月发布的 Kafka 4.0 版本,标志着 Kafka 架构的根本性变革 —— 彻底告别了对 ZooKeeper 的依赖,全面拥抱 KRaft 模式。本文将深入剖析 Kafka 的架构设计,详细介绍各核心组件的角色与交互机制,并通过与 RabbitMQ、Rocke...
ReentrantLock 基于 AQS 框架的核心工作机制深度解析 1. AQS 框架基础与 ReentrantLock 架构设计 测试结果 1.1 AQS 核心机制与设计理念 AbstractQueuedSynchronizer(AQS)作为 Java 并发包的核心框架,为各种同步器提供了统一的底层实现机制。其设计遵循模板方法模式,将通用的线程排队、阻塞唤醒等复杂逻辑封装...
Spring AI 核心模块 建议搭配源码一起阅读. AI commons 这一模块为 Spring AI 的各个上层能力(chat client、model、RAG、vector-store 等)提供通用基础,涵盖内容与媒体抽象、文档与元数据、模板渲染、分块与计数、评估与观测工具、文件读取与写入等。掌握这个模块能让你把不同部件“串起来”形成完整的数据处理和提示工程链路。 一、内容与...
服务调用过程 参考链接:dubbo2.6源码分析 1. 简介 在前面的文章中,我们分析了 Dubbo SPI、服务导出与引入、以及集群容错方面的代码。经过前文的铺垫,本篇文章我们终于可以分析服务调用过程了。Dubbo 服务调用过程比较复杂,包含众多步骤,比如发送请求、编解码、服务降级、过滤器链处理、序列化、线程派发以及响应请求等步骤。限于篇幅原因,本篇文章无法对所有的步骤一一进...
服务引用 参考链接:dubbo2.6源码分析 1. 简介 上一篇文章详细分析了服务导出的过程,本篇文章我们趁热打铁,继续分析服务引用过程。 在 Dubbo 中,我们可以通过两种方式引用远程服务。第一种是使用服务直连的方式引用服务,第二种方式是基于注册中心进行引用。服务直连的方式仅适合在调试或测试服务的场景下使用,不适合在线上环境使用。因此,本文我将重点分析通过注册中心引用服务...
服务导出 参考链接:dubbo2.6源码分析 简介 当我们在应用中使用@DubboService或XML配置声明一个服务时,Dubbo框架究竟做了什么?服务是如何被暴露给其他应用调用的?今天,我们将从源码角度一探究竟,理解Dubbo 3服务导出的完整流程。 与Dubbo 2.6相比,Dubbo 3已将事件传播机制从Spring容器依赖转向框架自身实现,提升了灵活性与扩展性。这...
负载均衡 参考链接:dubbo2.6源码分析 1.简介 LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况。通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。负载均衡可分为软件负载均衡和硬件负载均...
集群 参考链接:dubbo2.6源码分析 1. 集群模块概述 在分布式系统中,为了保证高可用性,同一服务通常会部署多个实例。对于服务消费者而言,如何从这些实例中选择一个进行调用,以及如何处理调用失败的情况,是需要特别关注的问题。Dubbo的集群模块正是为解决这些问题而设计的。 集群模块的核心职责包括: 将多个服务提供者合并为一个虚拟的服务提供点 在调用失败时,根据配...
Dubbo 服务路由机制详解 参考链接:dubbo2.6源码分析, dubbo官方文档-路由机制 1. 服务路由概述 在上一篇文章中,我们分析了集群容错的第一部分 — 服务目录 Directory。服务目录在刷新 Invoker 列表的过程中,会通过 Router 进行服务路由,筛选出符合路由规则的服务提供者。本文将深入分析 Dubbo 服务路由的实现原理和源码。 1.1 什...