每一个架构师必知必会的缩写词大全

公众号关注 「奇妙的 Linux 世界」

设为「星标」,每天带你玩转 Linux !

b0d3f924b82729c9a34a7831165def64.png

CAP、BASE、SOLID、KISS,这些缩写词是什么意思?

下图解释了系统设计中常见的缩写词。

ce502e5aa953e47075aa306fb6517518.gif

CAP

CAP 定理指出,任何分布式数据存储都只能提供以下三种保证中的两种:

  1. 一致性 - 每次读取都会收到最近的写入或错误。

  2. 可用性 - 每个请求都会收到响应。

  3. 分区容忍度 - 系统在网络故障时仍能继续运行。

然而,有人批评这一定理对分布式系统来说过于狭隘,我们不应该用它来对数据库进行分类。在分布式系统中,网络故障是一定会发生的,我们必须在任何分布式系统中解决这个问题。

您可以在 Martin Kleppmann 撰写的《请停止将数据库称为 CP 或 AP》一文中阅读更多相关内容。

BASE

关系数据库中使用的 ACID(原子性-一致性-隔离-持久性)模型对于 NoSQL 数据库来说过于严格。BASE 原则提供了更大的灵活性,选择了可用性而非一致性。它指出,状态最终将是一致的。

SOLID

SOLID 原则在 OOP 中相当有名。它有 5 个组成部分。

  1. SRP(Single Responsibility Principle, 单一责任原则) 每个代码单元只有一个责任。

  2. OCP(Open Close Principle, 开放关闭原则) 代码单元应可扩展,但不可修改。

  3. LSP(Liskov Substitution Principle, 利斯科夫替换原则) 子类应能被基类替代。

  4. ISP(Interface Segregation Principle, 接口隔离原则) 公开多个具有特定职责的接口。

  5. DIP(Dependency Inversion Principle, 依赖反转原则) 使用抽象概念来解除系统中的依赖关系。

KISS

"保持简单,傻瓜!"是美国海军在 1960 年首次提出的设计原则。它指出,大多数系统如果保持简单,就能达到最佳效果。

本文转载自:「ByteByteGo」,原文:https://url.hi-linux.com/Prjxg,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。

a2b08910df5bf79bb51d9c3dd8622356.gif

最近,我们建立了一个技术交流微信群。目前群里已加入了不少行业内的大神,有兴趣的同学可以加入和我们一起交流技术,在 「奇妙的 Linux 世界」 公众号直接回复 「加群」 邀请你入群。

64d2f52cf0338916a473147565de1b48.png

你可能还喜欢

点击下方图片即可阅读

27eeebb49d612abab1b367f705599a2a.jpeg

GitHub 星标 20.8K,中国程序员最容易发音错误的单词大全

c06e7ef0b21c576923cbe3315d1a2c67.png
点击上方图片,『美团|饿了么』外卖红包天天免费领

5b5eb59f0e164d251c4efc60a843b100.png

更多有趣的互联网新鲜事,关注「奇妙的互联网」视频号全了解!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值