云计算百科
云计算领域专业知识百科平台

开发者专业术语大词典

文章目录

  • 开发者专业术语大词典(纯记录版|可收藏慢慢看)
    • 0)通用基础
    • 1)架构风格与分层
    • 2)API 与通信
    • 3)安全与鉴权
    • 4)数据库与存储
    • 5)缓存与消息
    • 6)分布式系统常识
    • 7)性能优化与系统行为
    • 8)工程实践与协作
    • 9)测试与质量
    • 10)运维、云与容器
    • 11)编程语言与运行时
    • 12)数据工程(可选但常见)
    • 13)速查清单(A-Z 迷你词条)
    • 14)如何使用这份词典

开发者专业术语大词典(纯记录版|可收藏慢慢看)

这篇是独立于任何项目的术语博客:把软件开发里高频出现的名词按主题整理,给出简明释义 + 常见别称/易混点 + 一句话应用场景。遇到不懂的词,就当词典翻一眼。


0)通用基础

  • 算法复杂度(Time/Space Complexity):用 O() 表示算法随数据量增长的时间/空间开销,比如 O(n log n)。
  • 并发 / 并行(Concurrency / Parallelism):并发是“同时在处理很多事的感觉”,并行是真的同时执行。
  • 阻塞 / 非阻塞 / 异步:阻塞=调用者原地等待;非阻塞=立刻返回但可能需要不断询问;异步=结果准备好后再通知你。
  • 吞吐 / 延迟 / 抖动(Throughput / Latency / Jitter):单位时间处理量 / 单次操作耗时 / 延迟的波动。
  • 带宽 / RTT:网络能承载的速率 / 往返一次的时间。
  • IO 密集 / CPU 密集:瓶颈在磁盘/网络还是在算力。
  • 序列化(Serialization):把对象变成可传输/存储的字节;反过来叫反序列化。
  • 字节序(Endianness):大端/小端表示多字节整数的顺序。跨平台协议通常用大端。
  • 编码(UTF-8/UTF-16):字符→字节的规则;UTF-8最通用。

1)架构风格与分层

  • 单体(Monolith):所有功能在一个应用里,部署简单;缺点是体量大后难以演进。
  • 微服务(Microservices):按业务拆成多个小服务,独立部署;优点灵活,成本是复杂度飙升。
  • SOA:面向服务的架构,是微服务的“老前辈”。
  • 分层架构(Layered):UI/接口层 → 业务层(Service)→ 数据访问层(DAO/Repository)。
  • 六边形/端口与适配器(Hexagonal / Ports & Adapters):核心领域与外部适配层隔离,方便替换外部依赖。
  • 领域驱动设计(DDD):围绕领域模型组织代码与边界(界限上下文 Bounded Context)。
  • 事件驱动架构(EDA):用消息(Event)在服务间解耦;常配合消息队列。
  • CQRS:读写分离的架构模式,写侧负责变更,读侧为查询做优化。
  • 反腐层(ACL):老系统与新系统之间的隔离层,避免“坏味道”侵入新域。

2)API 与通信

  • REST:基于 HTTP 的风格,用资源(URI)+ 动词(GET/POST/PUT/DELETE)。
  • RPC / gRPC:像调用本地函数一样调用远端方法;gRPC 用 HTTP/2 + Protobuf。
  • GraphQL:客户端声明需要哪些字段,服务器按需返回;减少“过多/不足”数据。
  • WebSocket / SSE:持续连接的双向通信 / 服务器单向推送。
  • 状态码(HTTP Status):2xx成功、3xx重定向、4xx客户端问题、5xx服务器问题。
  • 幂等(Idempotent):同一个请求重复多次,结果一样(如 GET、PUT 通常幂等)。
  • 一致性语义:至少一次、至多一次、精确一次投递(消息系统常见术语)。
  • 契约(Contract):接口规范(入参/出参/错误码)。契约优先开发可以并行推进前后端。
  • 版本化(Versioning):URL 里放 /v1 或者用 Header/字段标识,以便兼容升级。
  • 节流/限流(Throttling/Rate Limiting):限制请求速率,保护服务;常见算法漏桶/令牌桶。
  • 熔断 / 降级 / 重试(Circuit Breaker / Fallback / Retry):故障自我保护与恢复策略;重试要配指数退避。

数据格式与序列化

  • JSON / XML / YAML / CSV:文本格式;JSON 最主流。
  • Protobuf / Avro / Thrift:二进制高效序列化;有Schema 演进能力。
  • Schema Registry:存放数据模式(Schema),为演进和兼容保驾护航。

3)安全与鉴权

  • 认证 vs 授权(AuthN vs AuthZ):你是谁 vs 你能做什么。
  • Token / JWT:登录后得到的一串凭证;JWT 是带签名的自包含 Token。
  • OAuth 2.0 / OIDC:授权标准 / 在 OAuth 上加“登录身份”的标准(获取用户信息)。
  • SSO(单点登录):一次登录,多个系统通用。
  • CSRF / CORS / XSS / SQL 注入 / SSRF / RCE:常见 Web 攻击;对应防护:SameSite、预检请求、转义输出、参数化查询、出网限制等。
  • 密码哈希:bcrypt / scrypt / Argon2(不可逆+慢),别存明文;Salt(每个密码随机盐)与 Pepper(服务端额外密钥)。
  • HMAC / 签名:校验消息完整性与来源。
  • TLS/SSL / 证书 / CA:加密传输与身份验证。
  • 最小权限原则(Least Privilege):只给必须的权限;数据库、云账号、系统用户都适用。
  • 零信任(Zero Trust):默认不信任任何网络边界,所有访问都需校验。

4)数据库与存储

  • OLTP / OLAP:联机事务处理(应用数据库)/ 联机分析处理(报表、数据仓库)。
  • ACID:事务的四特性:原子性、一致性、隔离性、持久性。
  • 事务隔离级别:读未提交/读已提交/可重复读/可串行化(InnoDB 默认可重复读 + MVCC)。
  • MVCC:多版本并发控制,读写互不阻塞的基础。
  • 锁(行锁/表锁/间隙锁):保护并发数据;SELECT … FOR UPDATE 是写锁查询。
  • 范式化 / 反范式化:减少冗余 vs 为性能做冗余。
  • 索引(B+树 / 哈希 / 全文 / 组合索引):加速查询;组合索引等值在前范围在后。
  • 执行计划(EXPLAIN)/慢查询日志:性能诊断的入口。
  • 分区 / 分表 / 分片(Sharding):拆大表或把数据分布到不同库/节点。
  • 复制(主从、半同步、多主):高可用与读扩展。
  • 一致性模型:强一致、最终一致、读后写一致、单调读。
  • 2PC/3PC / Saga:分布式事务策略;业务上常用 Saga(一系列本地事务 + 补偿)。
  • LSM-Tree / B-Tree:两类底层索引结构(NoSQL 常用 LSM,关系型常用 B+Tree)。
  • 数据变更捕获(CDC):从 binlog 流式读取变更,做同步/审计。
  • 键集分页(Keyset Pagination):用“上一页最后一个键”做游标,替代慢的 OFFSET。

5)缓存与消息

  • 缓存(Cache):提高读性能;位置有本地、近端(如 Redis)、CDN。
  • TTL / 过期策略:缓存生命周期;淘汰算法常见 LRU / LFU / FIFO。
  • 写穿 / 写回 / 写旁路(Write-Through / Write-Back / Write-Around):更新数据时如何与缓存协同。
  • 缓存一致性:删缓存先后、双写不一致等问题;可用延时双删、消息通知、版本号控制。
  • 布隆过滤器(Bloom Filter):用很小内存判断“可能存在/一定不存在”;常用来拦截无效请求。
  • 消息队列(MQ):异步解耦与削峰填谷;Kafka/RabbitMQ/RocketMQ 等。
  • 生产者 / 消费者 / 消费组:消息角色与并行消费模型。
  • 回压(Backpressure):下游处理不过来时让上游减速或丢弃。
  • Exactly-once:严格一次语义,通常通过幂等 + 去重 + 事务来接近实现。

6)分布式系统常识

  • CAP 定理:网络分区发生时,一致性与可用性不可兼得。
  • PACELC:没有分区时也要权衡延迟与一致性。
  • Raft / Paxos:分布式一致性协议,Raft 更易理解;用于副本选主与日志复制。
  • 选主(Leader Election):定出“领导者”负责写入,避免脑裂。
  • 服务发现(Service Discovery):在动态环境里找到目标服务(如 Consul、Eureka)。
  • 负载均衡(Load Balancing):在多个实例间分配请求(轮询、最少连接、一致性哈希)。
  • 健康检查 / 存活/就绪探针:判断实例是否可用、是否可接流量。
  • 灰度 / 金丝雀 / 蓝绿发布:小流量试运行 / 两套环境切换,降低发布风险。
  • 雪花 ID(Snowflake)/ ULID / UUID:全局唯一 ID 方案,兼顾有序性与分布式生成。
  • CRDT:能在无中心、并发更新的场景自动合并的数据结构。

7)性能优化与系统行为

  • 热点 / 冷数据:频繁访问的数据与很少访问的数据。
  • 批处理(Batching):把很多小请求合成一个大请求,减少开销。
  • 零拷贝(Zero-Copy):数据在内核/用户态间不复制,减少 CPU 与缓存压力。
  • IO 多路复用(epoll/kqueue/IOCP):高并发网络的基础。
  • 分页 / 缓存命中率:操作系统内存管理的关键指标。
  • 矢量化:一次对一组数据做同样的运算,利用 SIMD 加速。
  • 火焰图(Flame Graph):性能分析可视化,显示CPU时间都花在哪。

8)工程实践与协作

  • Git 基本流:main/develop/feature 分支;或 trunk-based(只 main + 短分支)。
  • Rebase vs Merge:前者重写历史更线性;后者保留分叉历史。
  • 代码评审(Code Review):提高质量与知识共享。
  • 静态分析 / Lint / 格式化:编译前发现问题,统一代码风格。
  • 语义化版本(SemVer):MAJOR.MINOR.PATCH;破坏性变更才升 MAJOR。
  • 约定式提交(Conventional Commits):feat:、fix:、docs: 等前缀,利于自动生成变更日志。
  • CI/CD:持续集成/持续交付(或部署);流水线自动化构建、测试、发布。
  • Artifact / 包仓库:构建产物(Jar/Docker 镜像等)的存储与分发。
  • Feature Flag:特性开关,灰度上线与 A/B 实验利器。
  • 技术债(Tech Debt):为了赶进度做的短期方案,后续要偿还(重构/补测试)。

9)测试与质量

  • 单元测试 / 集成测试 / 端到端(E2E):粒度从小到大。
  • 测试金字塔:单元测试多、集成适中、E2E 少而关键。
  • Mock / Stub / Fake:测试替身;不同程度地模拟依赖。
  • 回归测试:防止旧 Bug 重现。
  • 性能测试 / 压力测试 / 容量测试:关注吞吐、延迟、拐点与资源上限。
  • 混沌工程(Chaos Engineering):在可控范围内制造故障,验证韧性。
  • 可观察性(Observability)三件套:日志(Logs)、指标(Metrics)、链路追踪(Tracing)。
  • SLI/SLO/SLA:指标/目标/协议;例如:月度可用性 99.9%。

10)运维、云与容器

  • Docker / 镜像 / 容器:打包运行环境与应用。
  • Kubernetes(K8s):容器编排(调度、扩缩容、滚动发布)。
  • Deployment / StatefulSet / DaemonSet:K8s 不同工作负载类型。
  • Helm:K8s 包管理。
  • Service Mesh(Istio/Linkerd):把流量治理(熔断、限流、可观测)放到 Sidecar 代理里。
  • IaaS / PaaS / SaaS:基础设施/平台/软件即服务。
  • 基础设施即代码(IaC):用代码管理云资源(Terraform、Pulumi)。
  • 自动扩缩容(HPA):按指标自动加减实例。
  • 备份与恢复(Backup/Restore):全量 + 增量;演练很重要。
  • 合规与审计:满足法规(例如数据保留、访问审计、加密要求)。

11)编程语言与运行时

  • 编译型 / 解释型 / JIT:生成机器码 / 逐行执行 / 运行时边编译边执行。
  • 垃圾回收(GC):自动回收不用的内存;有 STW(Stop-The-World)停顿。
  • 栈 / 堆:自动管理的小内存区域 / 动态分配的大内存区域。
  • 不可变(Immutable):创建后不再修改;并发更安全。
  • 泛型 / 反射:类型参数化 / 运行时检查与操作类型信息。
  • 协程 / async-await:轻量并发原语,写同步代码的样子做异步事。
  • RAII:构造获得资源、析构自动释放(C++ 常见)。
  • Copy-on-Write:多个引用共享只读数据,写时再复制。

12)数据工程(可选但常见)

  • ETL / ELT:抽取-转换-加载 / 抽取-加载-再转换。
  • 数据湖 / 仓库:湖更原始开放,仓库规范化更适合分析。
  • 星型/雪花模型:维度建模方式。
  • 列式存储(Parquet/ORC):分析场景下压缩好、扫描少。
  • 批处理 / 流处理:按时间批次 vs 实时不断地处理。
  • 水位线 / 窗口(Windowing):流式计算确定“算到哪了”和如何聚合时间片。
  • Delta/湖格式:为数据湖提供 ACID 与时光回溯(Time-Travel)。

13)速查清单(A-Z 迷你词条)

  • A/B Test:两种方案对照实验。
  • Adapter / Facade / Decorator / Strategy / Observer:常见设计模式。
  • BASE:基本可用、软状态、最终一致(与 ACID 对应的分布式理念)。
  • Bloom Filter:高效判断“不存在”。
  • Canary:金丝雀发布,小流量试运行。
  • Checksum / CRC:校验数据是否被破坏。
  • Data Catalog:数据资产的“目录与说明书”。
  • Edge Cache / CDN:把内容推到离用户更近的边缘节点。
  • Feature Toggle:特性开关。
  • Gossip:去中心化成员传播协议。
  • Idempotency Key:用唯一键保证重复请求只执行一次。
  • Kappa / Lambda 架构:流批统一 / 流批结合的数据处理架构。
  • Monotonic Clock:单调时钟,避免系统时间跳变导致的计时错误。
  • N+1 查询:循环里频繁查库导致性能差的问题。
  • Outbox Pattern:把要发的消息写到“发件箱”表,与事务同成功,再异步投递 MQ。
  • Panicking / Fail-Fast:尽早暴露失败,避免隐藏错误。
  • Quorum:决多数(如多数派确认写入)。
  • Rate Limit:限流,常用令牌桶。
  • Shadow Traffic:影子流量,线上真实流量复制到新版本做验证。
  • Time-to-Live(TTL):数据/缓存过期时间。
  • ULID:按时间可排序、URL 友好的唯一 ID。
  • Vector Clock:并发版本的偏序关系表示。
  • Write-Amplification:写放大,存储系统优化时关注的指标。
  • YAGNI / KISS / DRY:不要做没必要的事 / 保持简单 / 不要重复自己。
  • Zero-Downtime:无中断发布或迁移。

14)如何使用这份词典

  • 当备忘录:遇到术语,先看“一句话释义”。
  • 当导航:按主题找深入方向(比如安全/分布式/数据库)。
  • 当需求清单:写设计文档时,把涉及到的术语挑出来,确保含义一致、边界清楚。
赞(0)
未经允许不得转载:网硕互联帮助中心 » 开发者专业术语大词典
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!