目录
一.微服务架构衍变
二.SpringCloud 概述
三.SpringCloud 实战
一.微服务架构衍变
-
1.1 单体架构 -
- 在应用初期,单体应用从成本、开发时间和运维等方面都有明显的优势,但是随着业务量和用户量的增加,导致代码的可读性和可维护性很差。同时面对海量的用户,数据库也会成为瓶颈。单体架构己经不能满足复杂的业务和海量的用户系统,改变单体架构势在必行。
-
1.2 SOA 架构 -
-
1.3 微服务架构
-
“微服务”最初是由 软件工程师 Martin Fowler 2014 年写的《MicroServices》中提出来的? -
微服务架构是复杂的业务组件和,实际上也是一种面向服务的体现,他说SOA架构的一种实现,但是相比传统的SOA架构来讲它更为轻便】敏捷和简单。微服务架构的风格,就是将单一程序开发成一个微服务,每个微服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP RESTFUL API.这些服务围绕业务能力来划分构建的,并通过完全自动化部署机制来独立部署,这些服务可以使用不同的编程语言,以及不同数据存储技术,以保证最低限度的中式管理 -
-
优点:
-
1,由于每个服务都是独立并且微小的,由单独的团队负责,仍然可以采用敏捷开发模式,自由的选择合适的技术,甚至可以重写老服务,当然也要遵守统一的API约定 -
2.每一个微服务都是独立部署的,可以进行快速迭代部署,根据各自服务需求选择合适的虚拟机和使用最匹配的服务资源要求的硬件 -
3.降低系统之间的耦合性,因为采用HTTP方式交互,各个微服务可以使用不同的编程语言实现
-
缺点:
-
1.微服务应用作为分布式系统带来了复杂性。各个微服务进行分布式独立部署,当进行模块调用的时候,分布式变的更加麻烦 -
2.微服务架构一般使用各个独立数据库,分布式事务的实现更具挑战性。 -
3.测试微服务变的复杂,当一个服务依赖另一个服务时,测试时需要另一个服务的支持 -
4.部署基于微服务的应用也很复杂,独立微服务的部署不但变得复杂,而且需要更高级别的自动化
二.SpringCloud 概述
三.SpringCloud 实战
|