1、微服务介绍
1.1、系统架构演变
随着互联网发展,网站应用的规模也在不断扩大,进而导致系统的架构也在不断的进行变化。从物联网早期发展到现在,系统架构大体经历了以下几个过程:单体应用内架构–》垂直应用架构–》分布式应用架构–》SOA架构–》微服务架构。当然还有悄然兴起的Service Mesh服务网格化。下面详细了解下每个过程的系统加过是什么样子的,各有什么优缺点。
1.1.1、单体应用架构
互联网早期,一般的网站应用流量比较少,只需要一个应用,将所有功能代码都部署在一起就可以了,这样可以减少开发,部署和维护的成本。
比如说一个电商系统,包含用户管理、商品管理、订单管理和物流管理等等很多模块,我们会把它们都做成一个web项目,代码写到一个服务项目里面,然后部署到一台tamcat服务器上。
优点:
- 项目架构简单、开发成本低
- 项目都部署在一个节点服务器上,维护方便
缺点: - 全部功能模块都在一个项目工程中欧,对应不断增长的项目规模来讲不易开发和维护
- 项目模块之间紧密耦合,单点容错率低
- 无法针对不同模块进行针对性优化和水平扩展
1.1.2、垂直应用架构
随着访问量的逐渐增大,单一应用只能依靠增加节点来应对,但