文章目录
- 1. 开源组件
- 2. CAP原则
1. 开源组件
功能 | springcloud netflix | springcloud alibaba | springcloud官方 | 其他 |
---|---|---|---|---|
服务注册与发现 | eureka | nacos | consul | zookeeper |
负载均衡 | ribbon | dubbo | ||
服务调用 | openFeign | dubbo | ||
服务容错 | hystrix | sentinel | ||
服务网关 | zuul | gateway | ||
服务配置的同一管理 | cofig-server | nacos | apollo(携程) | |
服务消息总线 | bus | |||
服务安全组件 | security | Oauth2.0 | ||
服务监控 | ||||
服务追踪 | sleuth | zipkin |
2. CAP原则
一致性(Consistency):多个机器中的数据是一致的(排除短暂不一致,分区容错性)
可用性(Availability):若一个机器宕机,其他机器仍然提供服务
分区容错性(Partition tolerance,这个特性是不可避免的):指允许短暂的信息不同步
CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
CA:单体服务,也就没有分布式或者一致性的概念了。
CP:部分机器宕机,则全部不提供服务
AP:部分机器宕机时,剩下服务仍然提供服务,只是没法保证数据一致性了。
zookeeper是CP原则,注重数据一致性,eureka是AP原则,注重服务的可用性