一. 分布式系统里面的特有名词
1. CAP定理
CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼
2. BASE原则(思想)
BASE模型反ACID模型,完全不同ACID模型,牺牲高一致性,获得可用性或可靠性:
Basically Available基本可用。支持分区失败(e.g. sharding碎片划分数据库)
Soft state软状态 状态可以有一段时间不同步,异步。
Eventually consistent最终一致,最终数据是一致的就可以了,而不是时时高一致。
3.接口设计原则(思想)
开闭原则,对扩展开放,对修改关闭
迪米特法则,一个对象应该对其他对象了解最少
单一职责原则,应该有且仅有一个原因引起类的变更
接口隔离原则,第一种:Clients should not be forced to depend upon interfaces that they don't use.(客户端不应该强行以来它不需要的接口),第二种:The dependency of one class to another one should depend on the smallest possible interface.(类间的依赖关系应该建立在最小的接口上)
依赖倒置原则,1)高层模块不应该依赖低层模块,两者都应该依赖于抽象(抽象类或接口),2)抽象(抽象类或接口)不应该依赖于细节(具体实现类),3)细节(具体实现类)应该依赖抽象
里氏置换原则,只要父类出现的地方子类就能够出现,而且替换为子类不会产生任何错误或异常。但是反过来,子类出现的地方,替换为父类就可能出现问题了
4.DDD和CQRS思想