微服务架构(MSA):
微服务架构是将应用拆分成多个应用,共同组成一个应用系统;每个微服务是一个独立的微型应用,拥有自己的独立数据库等资源,可以独立的开发、测试和部署;微服务间通过http等轻量级的通信协议来互相调用;微服务的部署常常用docker或者云虚拟机等技术实现自动化部署。
微服务架构的优势:
将巨大的单体应用拆分成多个服务,整个应用的复杂性被分摊到多个服务;每个服务可以独立开发,选用不同的技术实现,发挥各种技术的特长;部署效率高,每个服务独立部署,不需要部署整个应用,持续部署成为可能;每个服务可以独立扩展,针对不同服务的不同压力可以自由选择扩展
分布式系统:
分布式系统就是一个部署在同一个网络下的多个通过网络来通信和协调的组件,对外部而言表现得如同一个系统;
产生背景:随着业务规模的增长,企业级应用也随之发展,单体架构难以满足企业级开发的需求