概述
微服务架构是一种架构思想,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。
概念
把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。
定义
围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。
本质
用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。
备注︰微服务这个概念是2012年出现的,作为加快Web和移动应用程序开发进程的一种方法,2014年开始受到各方的关注,同年为微服务的元年;
微服务架构->架构就是为解耦,实际的开发方式采用的是分布式系统开发
与传统架构的区别
系统架构需要遵循的三个标准
- 提高敏捷性:及时响应业务需求,促进企业发展
- 提升用户体验:提升用户体验,减少用户流失
- 降低成本:降低增加产品、客户或业务方案的成本
传统的开发模式
先来看看传统的WEB 开发方式,通过对比比较容易理解什么是微服务架构。和微服务相对应的,这种方式一般被称为单体式开发(Monolithic) 。
既所有的功能打包在一个WAR包里,基本没有外部依赖(除了容器),部署在一个lavaEE容器(Tomcat,BoSs,WebLogic)里,包含了DO/DAO,Service,UI等所有逻辑。