Easymall项目分布式拆分整合(一)

                      Easymall项目分布式拆分整合(一)

目录

                             Easymall项目拆分整合(一)

一.内容详解

二.Easymall项目拆分结构

1.单体项目缺点

2.纵向拆分

2.1拆分的定义

1.前端系统:

2.商品后台系统:

3.用户后台系统:

4.购物车系统:

5.订单系统:

6.秒杀后台集群:

7.搜索系统:

8.父工程:

9.公用工程:

2.2多个工程搭建的结构

2.3系统与系统间调用数据


一.内容详解

  • 搭建parent工程
  • 搭建common工程
  • 搭建web前端工程
  • 搭建product后台商品工程
  • 完成后台商品工程与前端工程调用

二.Easymall项目拆分结构

1.单体项目缺点

  • 功能的强耦合:开发单独的功能需要了解其他功能逻辑.
  • 并发的集中:全部功能集中在一个系统,使得某些需要高并发和不需要高并发的功能不能单独处理并发压力

2.纵向拆分

2.1拆分的定义

根据单体项目中的各种功能单独维护一个系统,纵向拆分就是根据维护的不同业务逻辑独立形成的一个系统集群

1.前端系统:

给用户访问的系统(jsp页面,如果是html前端系统都可以不存在)

不需要访问数据库不需要访问redis,elasticsearch.所有的页面都在前端系统(product_info.jsp).

2.商品后台系统:

独立运行的web应用,没有页面,接收前端系统发起的请求,返回数据(前端系统和后台商品系统对接的接口文件),独立维护t_product表格数据相关的功能;

3.用户后台系统:

独立维护t_user表格数据的web应用

4.购物车系统:

独立维护t_cart表格数据的web应用

5.订单系统:

独立维护t_order t_order_item数据的web应用

6.秒杀后台集群:

消费端处理前端系统发送的用户秒杀信息,并发解决异步秒杀

7.搜索系统:

独立维护elasticsearch数据的访问,返回给前端使用;

 

多个系统间各种配置各种依赖各种公用类的支持使用maven

8.父工程:

公用的dependency在父工程中维护,统一的版本,还有一些插件可以由父工程统一管理

9.公用工程:

例如各个项目中MD5UTILS,COOKIEUTILS,VO(Page,SysResult,pojo)

2.2多个工程搭建的结构

Easymall项目分布式拆分整合(一)_第1张图片

Easymall项目分布式拆分整合(一)_第2张图片

2.3系统与系统间调用数据

Easymall项目分布式拆分整合(一)_第3张图片

 

 

你可能感兴趣的:(Easymall分布式项目,Easymall项目整合)