当前位置: 首页 > news >正文

基础架构架构师岗位技术手册

概述

本手册面向基础架构架构师岗位,涵盖八大核心技术领域。每个领域包含原理剖析、实现机制、技术生态说明及常见典型问题。


目录

  1. 分布式系统

  2. 容器/K8s

  3. 服务网格

  4. 存储系统

  5. 计算调度

  6. 网络

  7. 可观测性

  8. 成本工程


1. 分布式系统

1.1 一致性算法

Raft 算法

核心原理:Raft 通过领导者选举和日志复制实现分布式一致性,将问题分解为三个子问题:领导者选举、日志复制、安全性。

实现机制:

状态机: - Follower: 被动响应请求,超时后转为 Candidate - Candidate: 发起选举,获得多数票后成为 Leader - Leader: 接收客户端请求,复制日志到 Follower 领导者选举: - 任期(Term):单调递增的逻辑时钟 - 选举超时:150-300ms 随机化,防止瓜分选票 - 心跳机制:Leader 定期发送心跳维持权威 日志复制: - Log Entry: {term, index, command} - 两阶段提交:Leader 写入本地日志后,并行发送给 Follower - 多数派确认后 apply 到状态机

实践:

  • 内部数据库 ByteSQL 使用 Raft 做数据复制

  • 配置中心 etcd 集群管理服务配置

  • 强一致性存储服务采用 Multi-Raft 架构

常见典型问题:

Q: Raft 如何保证线性一致性?

A:

  1. Leader 必须拥有所有已提交的日志条目(完整性)

  2. 日志条目必须按顺序复制到多数派节点

  3. 只允许追加日志,不覆盖已提交条目(匹配性)

  4. 提交确认前必须持久化到多数派节点

Q: 网络分区时 Raft 如何保证数据不丢失?

A:

  1. 只有包含多数派的分区可以选出 Leader

  2. 被分割的 Follower 不处理请求,不会产生脏数据

  3. 恢复网络后,Leader 将缺失的日志同步给 Follower

  4. 旧 Leader 的未提交日志不会丢失(如果新 Leader 已确认)

Paxos 算法

核心原理:Paxos 通过两阶段提交(Prepare/Accept)达成共识,核心是少数服从多数的投票机制。

实现机制:

两阶段执行: Phase 1 (Prepare): - Proposer 选择提案编号 N,向多数派节点发送 Prepare(N) - Acceptor 承诺不再接受编号小于 N 的提案,并返回已接受的提案 Phase 2 (Accept): - Proposer 收到多数派响应后,发送 Accept(N, V) - Acceptor 收到 Accept 后,如未违反承诺则接受 提案值选择: - 如果多数派返回了已接受的提案,选择编号最大的值 - 否则,使用自己的值

Raft vs Paxos:

维度

Raft

Paxos

可理解性

强领导者,易理解

分布式共识,难以理解

性能

领导者优化,适合读多写少

无领导者,性能更均衡

连续提案

日志顺序保证

需要 Multi-Paxos 优化

1.2 分布式事务

2PC (Two-Phase Commit)
Phase 1 - Prepare: - TM 向所有参与者发送 Prepare 消息 - 参与者执行事务(持有什么锁) - 参与者返回 Prepare OK 或 Abort Phase 2 - Commit: - TM 收到所有 Prepare OK 后,发送 Commit - 参与者提交事务,释放锁 - 任一参与者返回 Abort 或超时,TM 发送 Rollback

缺点:

  • 同步阻塞:参与者prepare后持有锁直到commit/rollback

  • 协调者单点:协调者故障可能导致参与者无限等待

  • 数据不一致:协调者崩溃后部分节点可能已提交

TCC (Try-Confirm-Cancel)
Try: 预留资源(冻结/预扣) Confirm: 确认执行(真正扣减) Cancel: 回滚(释放冻结)

实践:

  • 交易系统使用 TCC 处理分布式事务

  • 跨机房同步使用 TCC 保证最终一致性

  • 优势:try阶段释放锁,不阻塞

Saga 模式
每个子事务 Si 都有对应的补偿事务 Ci 执行顺序:S1, S2, S3, ..., Sn 回滚时执行:Cn, ..., C3, C2, C1

适用场景:长事务、跨服务调用、允许最终一致性的业务

1.3 CAP 理论

C (Consistency): 所有节点看到同一份数据 A (Availability): 每个请求都能收到响应 P (Partition Tolerance): 网络分区时系统仍能运行 CA without P: 不可能存在的系统(网络必分区) 实际选择: - CP: Zookeeper, etcd, HBase, MongoDB - AP: Cassandra, DynamoDB, CouchDB

<

http://www.cnnetsun.cn/news/1669458.html

相关文章:

  • Spring IOC/DI 管理第三方Bean + 加载properties配置文件详解(Spring系列2)
  • 终极文件伪装指南:apate如何3秒内让你的文件“改头换面“
  • Full Page Screen Capture:智能滚动截图的完整网页保存方案 | 开发者与内容创作者必备
  • 为Windows 11 LTSC添加应用商店:3步实现系统功能完整化的创新解决方案
  • 【参数拟合】基于CMA-ES优化算法的OER模型全自动参数拟合系统附Matlab代码
  • 4大突破重构Web演示文稿创作体验:PPTist技术解析与实践指南
  • SRWE:突破Windows窗口限制的全能尺寸编辑工具
  • YahooFinanceApi:构建金融数据系统的三个核心挑战与解决方案
  • Qwen3-ForcedAligner应用案例:如何为口播视频快速添加精准字幕
  • 代码随想录一刷记录Day15——leetcode110.平衡二叉树 257. 二叉树的所有路径
  • GHelper终极指南:轻量级华硕笔记本性能控制工具完全解析
  • 如何在10分钟内掌握Stanford CoreNLP:自然语言处理工具包的终极实战指南
  • 如何突破语言壁垒?智能翻译跨语言工具的技术实现与场景化解决方案
  • 暗黑破坏神2存档编辑器终极指南:5分钟解放你的游戏体验
  • 26年知网AIGC检测算法大升级,这些变化你知道吗?
  • 游戏开发入门:用GDScript从零构建独立游戏的完整路径
  • ergsegregegeresage -python solve_p1_high.py --max-beta 70 2>1 | tee /home/c/Desktop/mimachan/saiti
  • CSS如何实现水平垂直居中的Logo布局_利用place-items属性
  • Navicat试用期重置技术实现深度解析:macOS环境下的配置清理方案
  • 快速原型:使用快马一键生成ollama d盘安装配置脚本
  • 3个关键技术决策:YOLOv8-face人脸检测架构的企业级部署指南
  • [具身智能-193]:node.js以及其在具身智能中的应用
  • 3分钟掌握VIA Keyboards:解锁机械键盘终极自定义能力 [特殊字符]
  • 2026届毕业生推荐的AI学术方案推荐
  • Pixel Language Portal部署教程:Hunyuan-MT-7B + Streamlit + Docker镜像免配置上线全流程
  • 如何通过LAVFilters实现流畅的媒体播放体验?
  • Graphormer镜像免配置优势:Gradio 6.10.0深度适配,无JavaScript报错
  • 实战分享:我用QWEN-AUDIO为我的自媒体视频批量生成旁白
  • G-Helper:华硕笔记本硬件性能调校与功耗管理终极指南
  • 录播姬完整指南:轻松实现mikufans直播自动录制与保存