用SSM框架从零开始搭建一个分布式商城(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lkp1603645756/article/details/81747922

电商行业技术特点:

  • 技术新
  • 技术范围广
  • 分布式
  • 高并发、集群、负载均衡、高可用
  • 海量数据
  • 业务复杂
  • 系统安全

分布式:一件事情,分开来做

集群:同样的事情,大家一起来做

负载均衡:分流的作用

高可用:为服务器做备份,无论如何都不能挂

1024b=1kb 1024kb=1mb 1024mb=1gb 1024gb=1tb 1024tb=1pb(海量数据的入门级别)

海量数据:使用在大数据上面,分析用户行为,达到精准推送的效果。

传统行业(IT):OA、CRM、ERP、医药采购管理系统、银行系统、财务软件

互联网行业(IT):电商(淘宝、京东),搜索(百度、谷歌),社交(人人网,天涯论坛),新浪微博,门户网站(新浪,搜狐),12306.cn

电商模式:

B2B:商家到商家(阿里巴巴,慧聪网,铭万网)

B2C:商家到用户(以前的京东)

C2C:用户到用户(淘宝)

B2B2C:商家到商家到用户(天猫、现在的京东)

O2O:线上到线下(百度外卖,美团,饿了么)

互联网金融:

P2P:个人对个人的信贷,互联网的个人对个人的信贷平台

传统架构

  • 500并发
    • 存在的问题:
      • 1.功能耦合度高
      • 2.系统维护成本高(项目部署在tomcat,开发人员发现某个功能有个BUG修复之后,需要停掉项目,然年后重新打包放到tomcat里面,接着重新启动。用户突然用着用着就不能用了,所以系统维护成本高。我们的想法是某个功能有问题,我们就停掉某一个功能就好了,然后进行修改。)
      • 3.如果并发量大,就无法解决高并发的问题
  • 1000并发
    • 通过负载均衡可以解决高并发的问题。
    • 存在的问题:
      • 1.系统无法有效进行水平扩展(集群不能针对功能模块,上图)
      • 2.用户存在重复登录的问题(针对第二点,需要session共享,是以session广播的形式,比较消耗资源,宽带)
  • 如果要达到10000并发
    • 需要20台服务器做tomcat集群。当tomcat集群中节点数量增加,服务能力先增加后下降。
    • 所以集群中节点数据不能太多,一般也就5个左右。

分布式架构(10000并发)

需要按照功能点把系统拆分,拆分成独立的功能工程,可以独立为某一个节点添加服务器,需要系统之间配合才能完成整个业务逻辑这就叫做分布式。

集群:相当于同一个工程代码拷贝多份部署到多台服务器,每台服务器单独独立部署运行。

分布式架构:

       把系统按照木块拆分成多个子系统;多个子系统项目协作才能完成业务流程系统之间需要进行通信。

优点:

1、把模块拆分,使用接口通信,降低模块之间的耦合度。

2、把项目拆分成若干个子项目;不同的团队负责不同的子项目。

3、增加功能时只需要在增加一个子项目,调用其他系统的借口就可以。

4、可以灵活的进行分布式部署。

缺点:

1、系统之间交互需要使用远程通信,需要开发接口,增加工作量。

2、各个模块有一些通用的业务逻辑无法公用。

基于SOA的架构

       SOA:Service Oriented Architecture面向服务的架构。也就是把工程都拆分成服务层工程、表现层工程。服务层中包含业务逻辑,只需要对外提供服务即可。表现层只需要处理和页面的交互,业务逻辑都是调用服务层的服务来实现。工程都可以独立部署。

淘淘商城的架构

接下来我们来画图回顾一下之前的几种架构模式:

MVC三层架构(集中式架构)

前台模块:根据id查询商品

后台模块:根据id查询商品

演变

分布式架构

前台系统

后台系统

演变

SOA架构

技术选型和开发环境

技术选型

开发工具版本和环境

工程搭建

因为有很多的工程,所以使用maven进行管理。

war包主要是部署在tomcat,pom是聚合工程,一般都是在子工程聚合前天子工程

创建好所需要的项目,下载导入好相应的jar包

右键taotao-manager-web项目>Run As>Maven build...,在Goals输入clean tomcat7:run之后点击run

创建index.jsp页面

启动我们的tomcat,这时候在浏览器输入我们的地址测试项目是否正常

猜你喜欢

转载自blog.csdn.net/lkp1603645756/article/details/81747922