单体架构:单体系或者是单体应用。就是一种把系统中所有的功能、模块耦合在一个应用中的架构。
1-1:单体架构特点:
- 打包成一个独立的单元(导成一个唯一的jar包或者是war包)
- 会 一个进程的方式来运行。
1-2:单体架构的 优点、缺点
- 优点:
- 项目易于管理
- 部署简单
- 缺点:
- 测试成本高
- 可伸缩性差
- 可靠性差
- 迭代困难
- 跨语言程度差
- 团队协作难
2-1:什么是微服务
微服务是 一种架构风格。一个大型的复杂软件应用,由一个或多个微服务组成。系统中的各个微服务可独立部署。各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好的完成该任务。
2-2:常见的架构风格
- 客户端与服务端
- 基于组件模型的架构(EJB)
- 分层架构(MVC)
- 面向服务架构(SOA)
2-3:微服务特点:
- 系统是 由多个服务构成
- 每个服务可以单独独立部署
- 每个服务之间是松耦合的。服务内部是高内聚的。外部是低耦合的。高内聚是每个服务只关注完成一个功能。
2-4:微服务的优缺点:
- 优点:
- 测试容易
- 可伸缩强
- 可靠性强
- 跨语言程度会更加灵活
- 团队协作容易
- 系统迭代容易
- 缺点:
- 运维成本过高,部署数量较多
- 接口兼容版本多
- 分布式系统的复杂性
- 分布式事务
3-1:MVC架构
其实MVC架构就是一个单体架构。
代表技术:Struts2、SpringMvc、Spring、MyBatis 等等。
3-2:RPC
RPC(Romote Procedure Call):远程过程调用。是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
代表技术:Thrift、Hessian等等。
3-3:SOA
SOA(Service oriented Architecture):面向服务架构
ESB(Enterparise Servce Bus):企业服务总线,服务中介。只要提供了一些服务与服务之间的交互。
3-4:微服务
原文:https://www.cnblogs.com/ios9/p/14956342.html