🏗️架构与工程
架构设计、微服务、浏览器原理、网络编程、测试、持续交付、软件设计
整体架构设计
许式伟架构课
- 01-架构设计的宏观视角
- 02-编程语言-生态与演进
- 03-编程语言-功能与控制
- 04-编程语言-面向对象
- 05-编程语言-泛型与类型
- 06-存储与数据库-RAID
- 07-存储与数据库-B+树
- 08-存储与数据库-SQL
- 09-安全-攻击与防御
- 10-安全-认证与授权
- 11-桌面开发的宏观视角
- 12-图形界面程序的框架
- 13-桌面程序的架构建议
- 14-Web开发-浏览器、小程序与PWA
- 15-跨平台与Web开发的建议
- 16-桌面开发的未来
- 17-实战-怎么设计一个"画图"程序
- 18-辅助界面元素的架构设计
- 19-架构-系统的概要设计
- 20-服务端开发的宏观视角
- 21-流量调度与负载均衡
- 22-业务状态与存储中间件
- 23-键值存储与数据库
- 24-文件系统与对象存储
- 25-存储与缓存
- 26-服务端的业务架构建议
- 27-实战-"画图"程序后端实战
- 28-架构-怎么做详细设计
- 29-服务治理的宏观视角与工程师思维
- 30-发布、升级与版本管理
- 31-日志、监控、报警与故障预案
- 32-故障排查与根因分析
- 33-过载保护与容量规划
- 34-云计算、容器革命与服务端的未来
- 35-架构设计的评判与业务导向
- 36-架构分解与全局性功能设计
- 37-架构原则-开闭原则与接口设计
- 38-不断完善的架构范式
- 39-架构范式-文本处理
- 40-架构老化与重构
- 41-软件工程的宏观视角
- 42-怎么写设计文档
- 43-如何阅读别人的代码
- 44-发布单元与版本管理
- 45-软件质量管理-单元测试、持续构建与发布
- 46-开源、云服务与外包管理
- 47-软件版本迭代的规划
- 48-软件工程的未来
- 49-实战-“画图程序”的整体架构
- 50-怎么保障发布的效率与质量
- 51-想当架构师,我需要成为“全才”吗
- 52-架构师成长与实战方法论
中台架构
- 01-更新说明
- 02-开篇词-中台的前世今生与2026新格局
- 03-中台演进史:从2015到2026的完整脉络
- 04-中台分类体系:2026年全景图谱
- 05-中台本质论:企业级能力复用平台的深层逻辑
- 06-中台建设前置决策框架
- 07-D4+模型:中台规划建设方法论(2026升级版)
- 08-Discovery:企业战略分解与全景调研
- 09-Define:平台型企业架构设计
- 10-Design:中台产品设计与MVP验证
- 11-Delivery:精益交付与运营治理
- 12-AI中台:大模型时代的能力复用新范式
- 13-中台ROI评估与治理体系
- 14-总结:中台落地工具资源汇总(2026版)
- 15-中台落地工具与Checklist
- 16-答疑篇-2026年中台核心争议与共识
- 17-数据中台:从OneData到数据资产运营
- 18-中台建设常见坑点速查表
软件架构场景实战22讲
- 00-学好软件架构,先从场景入手
- 01-冷热分离:表数据量大读写缓慢如何优化?
- 02-查询分离:表数据量大查询缓慢如何优化?
- 03-Elasticsearch 注意要点:这三点你不得不知
- 04-分表分库:单表数据量大读写缓慢如何解决?
- 05-读缓存:如何减少数据库读操作压力?
- 06-写缓存:如何节省数据库写操作资源?
- 07-数据收集:高频数据收集请求如何不影响主业务?
- 08-秒杀架构:设计秒杀架构必知必会的那些事
- 09-注册发现:如何对后台服务进行高效管理?
- 10-全链路日志:这个请求到底经历了什么?
- 11-熔断:如何预防一个服务故障崩掉整个系统?
- 12-限流:如何保障服务器承受亿级流量?
- 13-微服务的痛:用实际经历告诉你它有多坑(一)
- 14-微服务的痛:用实际经历告诉你它有多坑(二)
- 15-微服务的痛:用实际经历告诉你它有多坑(三)
- 16-数据一致性:下游服务失败上游服务如何独善其身?
- 17-数据同步:如何解决微服务之间的数据依赖问题?
- 18-BFF:如何处理好微服务之间千丝万缕的关系?
- 19-一人一套测试环境:测试环境何时能释放出来使用?
- 20-如何成为老板不可或缺的人?
微服务架构
- 01-到底什么是微服务
- 02-从单体应用走向服务化
- 03-初探微服务架构
- 04-如何发布和引用服务
- 05-如何注册和发现服务
- 06-如何实现RPC远程服务调用
- 07-如何监控微服务调用
- 08-如何追踪微服务调用
- 09-微服务治理的手段有哪些
- 10-Dubbo框架里的微服务组件
- 11-服务发布和引用的实践
- 12-如何将注册中心落地
- 13-开源服务注册中心如何选型
- 14-开源RPC框架如何选型
- 15-如何搭建一个可靠的监控系统
- 16-如何搭建一套适合你的服务追踪系统
- 17-如何识别服务节点是否存活
- 18-如何使用负载均衡算法
- 19-如何使用服务路由
- 20-服务端出现故障时该如何应对
- 21-服务调用失败时有哪些处理手段
- 22-如何管理服务配置
- 23-如何搭建微服务治理平台
- 24-微服务架构该如何落地
- 25-微服务为什么要容器化
- 26-微服务容器化运维:镜像仓库和资源调度
- 27-微服务容器化运维:容器调度和服务编排
- 28-微服务容器化运维:微博容器运维平台DCP
- 29-微服务如何实现DevOps
- 30-如何做好微服务容量规划
- 31-微服务多机房部署实践
- 32-微服务混合云部署实践
- 33-下一代微服务架构ServiceMesh
- 34-Istio:ServiceMesh的代表产品
- 35-微博ServiceMesh实践之路(上)
- 36-微博ServiceMesh实践之路(下)
- 37-AI辅助微服务开发与运维
- 38-大模型服务化架构
- 39-AI与微服务融合展望
- 40-微博技术解密(上)-微博信息流是如何实现的
- 41-微博技术解密(下)-微博存储的那些事儿
后台架构实战
- 00-开篇词 跳出单点思维模式,才能真正理解架构设计
- 01-为什么不同类型的业务后台架构模式是通用的?
- 02-如何利用“拆分”降低架构复杂度?
- 03-如何使用简洁的架构实现高性能读服务?
- 04-如何利用全量缓存打造毫秒级的读服务?
- 05-如何做到异构数据的同步一致性?
- 06-如何应对热点数据的查询?
- 07-如何基于流量回放实现读服务的自动化测试回归?
- 08-如何使用分库分表支持海量数据的写入?
- 09-如何打造无状态的存储实现随时切库的写入服务?
- 10-如何利用依赖管控来提升写服务的性能和可用性?
- 11-分库分表化后如何满足多维度查询?
- 12-如何利用数据库实现并发扣减?
- 13-如何利用缓存实现万级并发扣减?
- 14-如何利用缓存+数据库构建高可靠的扣减方案?
- 15-数据库与缓存的扩展升级与扣减返还
- 16-秒杀场景:热点扣减如何保证命中的存储分片不挂?
- 17-如何设计一锤子买卖的 SDK ?
- 18-如何设计微服务才能防止宕机?
- 19-如何做好微服务间依赖的治理和分布式事务?
- 20-如何通过监控快速发现问题?
- 21-如何进行高保真压测和服务扩容?
- 22-重构:系统升级,如何实现不停服的数据迁移和用户切量?
- 23-重构:烟囱式、平台化、中台化的架构同与异
- 24-加餐 技术人如何准备晋升答辩?
- 25-结束语 抓住本质,是成为技术专家的不二法则
Serverless架构
- 00-开篇词 Serverless 大热,程序员面临的新机遇与挑战
- 01-前因后果:Serverless 架构兴起的必然因素是什么?
- 02-概念新知:到底什么是 Serverless
- 03-基础入门:编写你的第一个 Serverless 应用
- 04-运行原理:Serverless 应用是怎么运行的?
- 05-开发框架:如何提高应用开发调试和部署效率?
- 06-依赖管理:Serverless 应用怎么安装依赖?
- 07-运行时:使用自定义运行时支持自定义编程语言
- 08-单元测试:Serverless 应用如何进行单元测试?
- 09-性能优化:如何提升 Serverless 应用的性能?
- 10-访问控制:如何授权访问其他云服务?
- 11-安全生产(一):Serverless 安全的主要风险是什么?
- 12-安全生产(二):如何提高 Serverless 应用的安全性?
- 13-成本优化:Serverless 真的省钱吗?
- 14-系统迁移 传统应用如何迁移到 Serverless?
- 15-身份认证:使用 Serverless 实现登录注册功能
- 16-API:基于 Serverless 构建弹性可扩展的 RESTful API
- 17-SSR:使用 React.js 开发 Serverless 服务端渲染应用
- 18-数据处理:基于 Serverless 开发高可用音视频处理系统
- 19-经验 送给你 N 条 Serverless 开发的实践经验
- 20-结束语 未来展望:Serverless 掀起新的前后端技术变革
- 21-Serverless
云原生微服务架构实战精讲
- 00-实战是学习新技术的不二法门
- 01-什么是微服务架构
- 02-什么是 Docker 与容器化技术
- 03-云原生应用的 15 个特征
- 04-什么是 Kubernete 容器化应用
- 05-什么是服务网格(Service Meh)
- 06-示例应用介绍与用户场景分析
- 07-如何进行领域驱动设计
- 08-如何对示例应用进行微服务划分
- 09-快速部署开发环境与框架
- 10-使用 OpenAPI 和 Swagger 实现 API 优先设计
- 11-使用 Spring Data JPA 实现数据库驱动微服务
- 12-如何基于 JUnit 5 的服务实现单元测试
- 13-如何基于 REST 服务实现集成测试
- 14-事件如何驱动微服务设计与异步消息传递
- 15-什么是事务性消息模式
- 16-事件发布如何进行处理
- 17-如何设计与实现事件源(Event ourcing)
- 18-如何处理司机位置更新事件
- 19-如何实现行程派发与调度算法
- 20-什么是数据一致性与 Saga 模式
- 21-如何使用 Saga 模式实现行程验证
- 22-CQRS 如何设计与实现
- 23-如何查询乘客和司机的行程
- 24-服务调用失败的处理策略与实践
- 25-如何基于 Spring Security 和 JWT 实现访问控制
- 26-服务版本更新策略是什么
- 27-如何实现应用配置的外部化与管理
- 28-使用 Prometheu 和 Grafana 处理性能指标数据
- 29-使用 Fluentd、ElaticSearch 和 Kibana 管理日志
- 30-使用 Sentry 处理异常
- 31-如何设计与实现 API 组合
- 32-如何使用 Netflix Falcor 组合 API
- 33-如何使用 GraphQL 组合 API
- 34-如何安装与配置 Itio
- 35-使用 API 网关作为应用请求入口
- 36-什么是服务重试与熔断器
- 37-如何实现追踪服务性能指标
- 38-如何实现服务访问控制与双向 TLS
- 39-使用 Jenkin 进行持续集成
- 40-如何持续部署到阿里云
- 41-如何结合服务网格进行灰度发布
- 42-使用 Spring HATEOAS 增强 REST 服务的语义
- 43-使用 gRPC 作为服务之间的交互方式
- 44-使用 Quarku 开发微服务
- 45-消费者驱动的服务契约测试
- 46-微服务架构展望
DevOps落地笔记
- 00-落地 DevOp,你需要一个全局视角
- 01-追本溯源:DevOp 的发展历史回顾
- 02-影响地图:产品规划和需求分析的利器
- 03-用户故事:对用户需求达成共识的关键
- 04-看板方法:成员工作内容清楚明白方法
- 05-非功能需求:如何有效关注非功能需求
- 06-代码预检查:提高入库代码质量的神兵利器
- 07-案例分析:如何有效管理第三方组件
- 08-技术债务:勤借勤还,再借不难
- 09-配置管理:实现一包到底的必胜手段
- 10-环境管理:交付测试环境的迅猛方法
- 11-持续集成:软件持续集成,发布信手拈来
- 12-API 管理:微服务时代的必备工具
- 13-自动化测试:提高测试效率的不二之选
- 14-部署流水线:打造一站式部署的关键平台
- 15-混沌工程,通过问题注入提高系统可靠性
- 16-案例分析:百度效率云是如何做代码审查的
- 17-度量指标:寻找真正的好指标?
- 18-团队能力:团队能力=交付能力
- 19-响应速度:天下武功,唯快不破
- 20-软件质量:决定系统成功的关键
- 21-业务价值:软件发布的最终目的
- 22-DevOp,下一站在哪里?
分布式链路追踪实战
- 00-如何更好地观测线上系统?
- 01-数据观测:数据追踪的基石从哪里来?
- 02-系统日志:何以成为保障稳定性的关键?
- 03-日志编写:怎样才能编写“可观测”的系统日志?
- 04-统计指标:“五个九”对系统稳定的真正意义
- 05-监控指标:如何通过分析数据快速定位系统隐患?(上)
- 06-监控指标:如何通过分析数据快速定位系统隐患?(下)
- 07-指标编写:如何编写出更加了解系统的指标?
- 08-链路监控:为什么对于系统而言必不可少?
- 09-性能剖析:如何补足分布式追踪短板?
- 10-链路分析:除了观测链路,还能做什么?
- 11-黑白盒监控:系统功能与结构稳定的根基
- 12-系统告警:快速感知业务隐藏问题
- 13-告警质量:如何更好地创建告警规则和质量?
- 14-告警处理:怎样才能更好地解决问题?
- 15-日志收集:ELK 如何更高效地收集日志?
- 16-指标体系:Prometheu 如何更完美地显示指标体系?
- 17-链路追踪:Zipkin 如何进行分布式追踪?
- 18-观测分析:SkyWalking 如何把观测和分析结合起来?
- 19-云端观测:ARMS 如何进行云观测?
- 20-运维集成:内部的 OSS 系统如何与观测相结合?
- 21-未来的监控是什么样子?
技术方法论
- 00-洞悉技术的本质,享受科技的乐趣-[2026重制版]
- 01-程序员如何用技术变现-[2026重制版]
- 02-Equifax信息泄露与数据安全-[2026重制版]
- 03-技术领导力-[2026重制版]
- 04-推荐阅读:每个程序员都该知道的知识-[2026重制版]
- 05-答疑解惑:渴望、热情和选择-[2026重制版]
- 06-如何成为一个大家愿意追随的Leader-[2026重制版]
- 07-程序中的错误处理-[2026重制版]
- 08-魔数0x5f3759df-[2026重制版]
- 09-推荐阅读:机器学习101-[2026重制版]
- 10-时间管理-[2026重制版]
- 11-故障处理最佳实践-[2026重制版]
- 12-答疑解惑:我们应该能够识别的表象和本质-[2026重制版]
- 13-Git协同工作流,你该怎么选-[2026重制版]
- 14-分布式系统架构的冰与火-[2026重制版]
- 15-从亚马逊的实践,谈分布式系统的难点-[2026重制版]
- 16-分布式系统的技术栈-[2026重制版]
- 17-分布式系统关键技术:全栈监控-[2026重制版]
- 18-分布式系统关键技术:服务调度-[2026重制版]
- 19-分布式系统关键技术:流量与数据调度-[2026重制版]
- 20-洞悉PaaS平台的本质-[2026重制版]
- 21-推荐阅读:分布式系统经典资料与论文-[2026重制版]
- 22-编程范式游记(1)-起源-[2026重制版]
- 23-编程范式游记(2)-泛型编程-[2026重制版]
- 24-编程范式游记(3)-类型系统和泛型的本质-[2026重制版]
- 25-编程范式游记(4)-函数式编程-[2026重制版]
- 26-编程范式游记(5)-修饰器模式-[2026重制版]
- 27-编程范式游记(6)-面向对象编程-[2026重制版]
- 28-编程范式游记(7)-基于原型的编程范式-[2026重制版]
- 29-编程范式游记(8)-Go语言的委托模式-[2026重制版]
- 30-编程范式游记(9)-编程的本质-[2026重制版]
- 31-编程范式游记(10)-逻辑编程范式-[2026重制版]
- 32-编程范式游记(11)-程序世界里的编程范式-[2026重制版]
- 33-弹力设计篇之"认识故障和弹力设计"-[2026重制版]
- 34-弹力设计篇之"隔离设计"-[2026重制版]
- 35-弹力设计篇之"异步通讯设计"-[2026重制版]
- 36-弹力设计篇之"幂等性设计"-[2026重制版]
- 37-弹力设计篇之"服务的状态"-[2026重制版]
- 38-弹力设计篇之"补偿事务"-[2026重制版]
- 39-弹力设计篇之"重试设计"-[2026重制版]
- 40-弹力设计篇之"熔断设计"-[2026重制版]
- 41-弹力设计篇之"限流设计"-[2026重制版]
- 42-弹力设计篇之"降级设计"-[2026重制版]
- 43-弹力设计篇之"弹力设计总结"-[2026重制版]
- 44-性能设计篇之"缓存"-[2026重制版]
- 45-管理设计篇之"分布式锁"-2026重制版
- 46-性能设计篇之"异步处理"-[2026重制版]
- 47-管理设计篇之"配置中心"-2026重制版
- 48-性能设计篇之"数据库扩展"-[2026重制版]
- 49-管理设计篇之"边车模式"-2026重制版
- 50-性能设计篇之"秒杀"-[2026重制版]
- 51-管理设计篇之"服务网格"-2026重制版
- 52-性能设计篇之"边缘计算"-[2026重制版]
- 53-管理设计篇之"网关模式"-2026重制版
- 54-管理设计篇之"部署升级策略"-2026重制版
- 55-程序员练级攻略
- 56-程序员练级攻略:零基础启蒙-[2026重制版]
- 57-程序员练级攻略:正式入门-[2026重制版]
- 58-程序员练级攻略:程序员修养-[2026重制版]
- 59-程序员练级攻略:编程语言-[2026重制版]
- 60-程序员练级攻略:理论学科-[2026重制版]
- 61-程序员练级攻略:系统知识-[2026重制版]
- 62-程序员练级攻略:软件设计-[2026重制版]
- 63-程序员练级攻略:Linux系统、内存和网络-[2026重制版]
- 64-程序员练级攻略:异步I-O模型和Lock-Free编程-[2026重制版]
- 65-程序员练级攻略:Java底层知识-[2026重制版]
- 66-程序员练级攻略:数据库-[2026重制版]
- 67-程序员练级攻略:分布式架构入门-[2026重制版]
- 68-程序员练级攻略:分布式架构经典图书和论文-[2026重制版]
- 69-程序员练级攻略:分布式架构工程设计-[2026重制版]
- 70-程序员练级攻略:微服务-[2026重制版]
- 71-程序员练级攻略:容器化和自动化运维-[2026重制版]
- 72-程序员练级攻略:机器学习和人工智能-[2026重制版]
- 73-程序员练级攻略:前端基础和底层原理-[2026重制版]
- 74-程序员练级攻略:前端性能优化和框架-[2026重制版]
- 75-程序员练级攻略:UI-UX设计-[2026重制版]
- 76-程序员练级攻略:技术资源集散地-[2026重制版]
- 77-程序员练级攻略的正确打开方式-[2026重制版]
- 78-程序员面试攻略-[2026重制版]
- 79-高效学习方法论-[2026重制版]
- 80-高效沟通指南-[2026重制版]
- 81-谈谈我的"三观"-[2026重制版]
- 82-业精于勤,行成于思-[2026重制版]
架构设计面试精讲
- 01-研发工程师想提升面试竞争力,该具备这三个技术认知
- 02-研发工程师如何用架构师视角回答架构设计方案?
- 03-面试官如何考察与 CAP 有关的分布式理论?
- 04-亿级商品存储下,如何深度回答分布式系统的原理性问题?
- 05-海量并发场景下,如何回答分布式事务一致性问题?
- 06-分布式系统中,如何回答锁的实现原理?
- 07-RPC:如何在面试中展现出“造轮子”的能力?
- 08-MQ:如何回答消息队列的丢失、重复与积压问题
- 09-如何回答 MySQL 的索引原理与优化问题?
- 10-如何回答 MySQL 的事务隔离级别和锁的机制?
- 11-读多写少:MySQL 如何优化数据查询方案?
- 12-写多读少:MySQL 如何优化数据存储方案?
- 13-缓存原理:应对面试你要掌握 Redis 哪些原理?
- 14-如何向面试官证明你做的系统是高可用的?
- 15-如何从架构师角度回答系统容错、降级等高可用问题?
- 16-如何向面试官证明你做的系统是高性能的?
- 17-如何从架构师角度回答怎么应对千万级流量的问题?
- 18-彩蛋 互联网架构设计面试,你需要掌握的知识体系
- 19-案例串联 如何让系统抗住双十一的预约抢购活动?
- 20-结束语 程序员的道、术、势
- 21-开篇词-中高级研发面试,逃不开架构设计这一环
从0开始学架构
技术通识
- 01-技术深度:数据与存储
- 02-每个工程师都应该了解的:A-B测试
- 03-每个工程师都应该了解的:聊聊幂等
- 04-每个工程师都应该了解的:大数据时代的算法
- 05-每个工程师都应该了解的:数据库知识
- 06-每个工程师都应该了解的:系统拆分
- 07-每个工程师都应该了解的:API的设计和实现
- 08-每个工程师都应该了解的:中美在支付技术和大环境下的差异
- 09-编程语言漫谈
- 10-小议Java语言
- 11-硅谷人如何做CodeReview
- 12-AI多代理协作配置实践
- 13-TDD
- 14-分层架构
- 15-DDD与微服务
- 16-遗留系统改造
- 17-Spring Cloud:面向应用层的云架构解决方案 - 从Netflix停维到Service Mesh时代