Java 系统架构——MVC、RPC、SOA和微服务架构

Java 系统架构——MVC、RPC、SOA和微服务架构

  1. MVC架构
    定义: 其实MVC架构就是一个单体架构。
    代表技术: Struts2、SpringMVC、Spring、Mybatis 等等

  1. RPC架构
    定义: RPC(Remote Procedure Call):远程过程调用。它是一种通过网络从远程计算机程序上请求,而不需要了解底层网络技术的协议的服务。
    代表技术: Thrift、Hessian 等等。

  1. SOA架构
    定义: SOA(Service Oriented Architecture) —— 面向服务架构。一种利用ESB(Enterparise Service Bus 即:企业服务总线)的服务中介来提供服务之间的交互。ESB包含的功能 如:负载均衡、流量控制、加密处理、服务监控、异常处理、监控告急等等。
    代表技术: Mule、WSO2

  1. 微服务架构
    定义: 微服务即是利用注册服务中心技术(zoomkeeper/eureka)来管理服务的一个轻量级架构方案。
    代表技术: SpringCloud、dubbo 等等。Java 系统架构——MVC、RPC、SOA和微服务架构