单体架构概述
把所有服务都堆砌在一个系统中,然后把系统打成一个jar包或者war包运行在一个应用服务器中。
单体架构的优点,架构单一容易维护,开发测试部署比较便捷。
单体架构的缺点,复杂度高;部署慢而且体积大不容易发布;占用服务器资源过大;阻碍技术创新。
微服务架构概述
微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中。服务建通信采用“轻量级通信机制”,通常用http资源的api来实现。这些服务围业务能力构建并且可通过全自动部署机制独立部署,这些服务公用一个最小型的集中式的管理,服务可用不同的语言开发,使用不同的数据存储技术。
微服务架构的特征
1)每个微服务都可独立运行在自己的进程中;
2)一系列独立运行的微服务共同构建起整个系统;
3)每个微服务可用独立的开发,在开发过程中只关注一个业务模块的特定功能,比如支付服务,订单管理,用户管理等。
4)可使用不同的语言与数据存储技术。
5)全自动部署。
微服务架构的优缺点
优点:每个服务更易于开发维护,耽搁服务启动快部署快消耗的服务器资源更少;技术栈不受限制。
缺点:运维要求高,分布式服务固有的复杂度。
什么项目适合微服务?什么项目不适合微服务?
大型项目,有快速迭代的要求,访问压力过大的网站 适合微服务。
业务稳定,迭代周期长的项目不适合微服务。