深入理解Spring Cloud与微服务构建【一】 - 1.4 微服务的设计原则与Spring Cloud简介
微服务的设计原则
软件设计每一个版本都在变化,所以软件设计应该是渐进式发展。 软件从一开始就不应该被设计成微服务架构,微服务架构固然有优势,但是它需要更多的资源,包括服务器资源、技术人员等。追求大公司所带来的技术解决方案,刻意地追求某个新技术,企图使用技术解决所 有的问题,这些都是软件设计的误区。
- 在微服务架构中,有三大难题,那就是服务故障的传播性、服务的划分和分布式事务。在 微服务设计时, 一定要考虑清楚这三个难题,从而选择合适的框架。目前比较流行的微服务框 架有 Spring 社区的 Spring Cloud、Google 公司的 Kubemetes 等。不管使用哪一种框架或者工具, 都需要考虑这三大难题。 为了解决服务故障的传播性, 一般的微服务框架都有熔断机制组件。 另外,服务的划分没有具体的划分方法, 一般来说根据业务来划分服务, 领域驱动设计具有指 导作用 。 最后,分布式事务一般的解决办法就是两阶段提交或者三阶段提交,不管使用哪一种 都存在事务失败,导致数据不一致的情况,关键时刻还得人工去恢复数据。总之,微服务的设 计一定是渐进式的,并且是随着业务的发展而发展的。
Spring Cloud简介
- Spring Cloud 作为 Java 语言的微服务框架,它依赖于 Spring Boot,有快速开发、持续交付和 容易部署等特点。 Spring Cloud 的组件非常多,涉及微服务的方方面面,井在开源社区 Spring 和 Netflix、 Pivotal 两大公司的推动下越来越完善。本章主要介绍 Spring Cloud,将从以下方面来讲解。
微服务应该具备的功能。
- Spring Cloud 介绍。
- Dubbo 介绍。
- Kubemetes 介绍。
- Spring Cloud 与 Dubbo 比较。
- Spring Cloud 与 Kubemetes 比较。
相关推荐
与卿画眉共浮生 2020-11-13
smalllove 2020-11-03
hellowordmonkey 2020-11-02
丽丽 2020-10-30
周太郎 2020-10-28
greensomnuss 2020-10-27
职业炮灰 2020-10-16
与卿画眉共浮生 2020-10-14
feinifi 2020-10-14
feinifi 2020-10-13
yangjinpingc 2020-10-09
davis 2020-09-29
RickyIT 2020-09-27
lisongchuang 2020-09-27
tangxiong0 2020-09-03
meleto 2020-08-17
幸运小侯子 2020-08-14
YangHuiLiang 2020-08-06