四种JavaEE架构简介

1. 传统三层架构

配图是一个基于MVC的三层架构, 大致可以分成表现层, 业务层和持久层

表现层负责接收请求和转发请求

业务层主要负责处理请求, 值得注意的是事务管理, 日志记录等操作通常也是封装在这层中

持久层主要负责数据库与实体之间的操作

我们可以使用框架来简化各层的开发, 例如表现层使用SpringMVC或Strut2, 持久层使用Mybatis或Hibernate, 使用Spring管理三层之间的关系

四种JavaEE架构简介_第1张图片

2. 集群架构

集群属于水平拓展.

传统三层架构中存在许多问题, 比如业务层中不同模块占用系统资源的比例相差太大, 导致占用系统资源, 可以使用集群解决这类问题.

在集群架构, 一般由这么一个重要的角色, 那就是反向代理服务器, 它的主要任务是实现负载均衡, 接收用户请求, 转发到目标服务器.

反向代理服务器可以使用nginx实现.

四种JavaEE架构简介_第2张图片

3. 分布式架构

多个模块完成一个功能.

每个模块都可以搭建集群 -> 高可用

四种JavaEE架构简介_第3张图片

4. 微服务架构

根据产品的业务功能模块来划分服务的种类, 这属于垂直划分.

客户端可以通过基于HTTP或RPC的方式来调用微服务, 这样做的目的是为了降低调用所产生的性能开销.

每个模块也可搭建集群 -> 高可用

四种JavaEE架构简介_第4张图片

三种轻量级API调用服务 - 使用service gateway和service register实现客户端与微服务之间的调用(实现通信)

SOA实现两个系统之间通信的三种方式

四种JavaEE架构简介_第5张图片

dubbo体系结构:

四种JavaEE架构简介_第6张图片

一个典型的基于SOA的电商项目架构:

四种JavaEE架构简介_第7张图片

你可能感兴趣的:(java)