松耦合的架构理念,是使得每一层处理自己的事物,而不和其他层耦合,前后端分离,应用层和数据层分离,网络层与逻辑分发层分离,而层与层之间,用api接口对接。
微服务的高可用,由kubenetes的容器副本来保证;数据可用性,当然最好是有数据层的副本来保证;数据的强一致性,在分布式存储中很难保证,最多如multi-raft架构,做到顺序一致性。
纠正下观点,微服务是一种架构思维而不是业务应用,实施微服务有个重点的设计模式就是数据库法,即每个服务对应一个数据库,如果数据之间有依赖,通过接口的方式来调用,说白了服务是把数据向外输出。服务高可用、数据高可用、数据一致性,是实施微服务架构的目标。
服务高可用:通过部署多个服务实例,通过为服务网框架以及熔断降级措施,来达到服务的高可用;
数据高可用:数据库或者缓存采用主从模式
数据一致性 :分布式事物或者柔性事物都可用