2.分布式事务
1.什么是分布式事务
分布式事务是指,在多个服务中需要操作不同的数据库的动作,这些动作要么全部成功,要么全部失败。
2.分布式中的CAP定理的理解及如何选择CAP定理
1)一致性 C
一致性:指数据状态保持一致。
例如A给B转账,A与B的金额总和必须保持一致。
2)可用性 A
可用性:指某个服务出现单一故障,并不影响其他服务的使用。通过可以使用集群的方式保持高可用性。
例订单服务出现故障,无法访问订单状态,但是积分服务仍然提供可以查询积分的功能。
3)分区容错性 P
分区容错性:指出现服务间的网络错误时,各个服务仍然可以使用。
例订单服务与积分服务之间的网络连接错误,客户端仍可以访问订单状态及积分数据。
在分布式中,一般都只能实现其二,即使在单体系统,要保持CAP也不是容易的事情,例如,单体系统如何集群,某一个节点出现了故障,或者网络错误,也是保证不了的。
因为不能保证网络问题,所以分区容错性一定要存在,所以一只能选择CP或者AP
CP组合:保证了数据一致性和分区容错性。如果出现服务故障或者网络错误的情况下,则会提示,系统错误,请稍后重试。
AP组合:保证了可用性和分区容错性。例如,积分服务与订单服务的网络出现故障,但是允许用户下订单,同时访问积分时,积分还是原来的积分数据。当网络正常后,增加积分的操作会再次执行。
3.zookpeer与eureka分别采用什么定理
1)zookpeer采用的是CP
zookpeer采用的是主从架构,当其挑选leder时,客户端不能注册到zookpeer中。
当所有的zookpeer的节点都收到客户端的注册信息时,客户端才能收到注册成功的信息。
2)eureka采用的是AP
eureka的每个节点都会相互异步同步注册信息,在同步的过程中,数据状态并不会一致,但会最终保持一致。

浙公网安备 33010602011771号