本文参考传智播客巴巴运动网视频

本项目是一个在线商品交易平台,平台的主要目的是让企业在平台上发布商品及资讯,用户可以在此平台上购买商品并参与商品的评论。围绕这一目的,系统需要实现商品管理,商品订购,多部门订单处理,商品促销,内容管理等功能。

一、平台技术架构

使用EJB是因为当时3G已经出来,如果以后3G普及了,很多用户可能会通过手机去购物,这时候商城可定要提供两个终端,一种针对电脑,一种针对手机。

采用EJB的话可以把业务层的功能做成EJB部署到一台机器上面,再分别开发PC机的客户端和手机的客户端来远程调用EJB的业务层。

如果使用SSH架构的话,需要维护多份代码。

二、服务器架构

系统有多类服务器,分别为:数据库服务器、JBOSS应用服务器(运行EJB程序)、Tomcat服务器(EJB客户端)、Apache的http服务器(专门用来解析静态文件,减轻Tomcat压力)。关于Apache的http服务器与Tomcat的集成,请在网上搜一下。

随着访问量的增大,需要分别对这三类服务器进行配置集群。在集群环境下,需要加入负载均衡器(可以用硬件来做,也可以用软件来做,最好是用硬件来做。采用软件来做的一般是没钱的公司。)将用户的请求交给集群环境中的某一台机器来处理。

集群下文件的处理方式:1、通过软件方法,开一个socket,每台机器都传送一下,这种方式不大保险。2、硬件方法,磁盘阵列。效率很高,有些硬盘可以作为服务硬盘,有些可以作为备份硬盘。可以把数据根据raid方案放在不同的扇区里面,读取的时候,读取光头会同时读取。访问硬盘的速度可以成倍提高。

多台服务器间Session同步:如果集群环境下服务器不多(一般不超过5台,最好不超过3台。因为让每个Session都分布在各个服务器上会占用很大性能)可以通过Tomcat来配置集群的Session同步。如果服务器超过5台,最好单独搞一个Session服务器。

像这种集群方案,IBM这类公司已经提供了一套一系列的硬件方案,不过一套方案要卖个上百万。有四台WEB服务器,最少能同时支撑三万多人在线。一天的访问量就有三十来万。像当当网,一天也就十八万。

另一种方案是:COOKIE+DB来实现Session的功能,他会把数据存放到数据库,给用户写入个COOKIE,COOKIE存入随机生成唯一ID,标识用户身份,卓越网和当当网用的就是这种方案。

三、用到的几个性能优化的技术

OSCatch:缓存

Velocity:页面静态化

SSI:包含页面

巴巴运动网商品交易系统的架构相关推荐

  1. 新巴巴运动网 项目第十一天

    新巴巴运动网 项目第十一天 今天内容 购物车 创建购物车对象 加入购物车分析开发流程 加入购物车代码开发 同款商品合并(非登陆时.已登陆时) 去购物车结算分析开发流程 去购物车结算代码开发 创建购物车 ...

  2. 新巴巴运动网 项目第三天

    新巴巴运动网 项目第三天 今天内容 Dubbo优化 搭建后台管理页面 品牌管理 列表查询(带条件 + 分页) 品牌管理 去修改页面 品牌管理 异步上传图片 Dubbo优化 超时 服务消费方通过注册中心 ...

  3. 【j2ee spring】39、巴巴运动网的产品信息

    巴巴运动网的产品信息 1.项目图解 2.我们开始做我们的相应的功能模块 页面的素材我会上传的,链接是:http://download.csdn.net/detail/cutter_point/8803 ...

  4. 【j2ee spring】38、巴巴运动网的产品文件的上传

    巴巴运动网的产品文件的上传 1.项目图解 2.我们开始做我们的相应的功能模块 页面的素材我会上传的,链接是:http://download.csdn.net/detail/cutter_point/8 ...

  5. 新巴巴运动网资料总结

    1.什么是"负载均衡"? 部署tomcat集群是为了防止数据量过大的时候,一台服务器承载不了.那么,一台tomcat的最大数据量是()多少呢?如何知道数据在那台服务器上呢(通过Ng ...

  6. 巴巴运动网学习笔记(36-40)

    1.创建品牌的业务bean,并单元测试 View Code 1 package cnblogs.xiaoqiu.bean.product; 2 3 import java.io.Serializabl ...

  7. 巴巴运动网学习笔记(21-25)

    1.实现最基本的分页数据的的查找功能(claaType,bengin,max),并单元测试 View Code 1 public <T> ScrollResult<T> get ...

  8. 巴巴运动网学习笔记(16-20)

    1.ProductType的JPA映射 View Code 1 @Entity 2 public class ProductType { 3 private int id; 4 private Str ...

  9. 新巴巴运动网项目需求书_项目申报书、项目可行性研究报告傻傻分不清楚?

    点击蓝色字关注我们 在企业的日常运作中,会出现很多种报告,比如:企业初建厂房时,需要去发改委取得备案文件,这个时候需要一份可行性研究报告:企业发展过程中,需要通过项目形式,去申请一笔资金时候,又需要一 ...

最新文章

  1. 解决Python报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte
  2. ubuntu清除mac缓存
  3. redis lua
  4. Android中的Handler, Looper, MessageQueue和Thread
  5. 查看容器ID以及如何在docker和宿主机之间复制文件
  6. 对windows更多的理解
  7. react 类暴露_react如何将组件内部的方法暴露给外部
  8. 老李分享:持续集成学好jenkins之Git和Maven配置
  9. 【3D相册】零基础完成3D相册并配上背景音乐
  10. 充电速度公式_锂电充电时间计算公式
  11. Python: PS 滤镜--碎片特效
  12. 图像算法研究---背景虚化算法
  13. Android 集成高德地图SDK
  14. h5页面如何预览excel文件_kintone excel预览插件
  15. hadoop2.8配置_Hadoop 2.8集群安装及配置记录
  16. 深圳大学计算机专业保研率,深圳最好的公立大学(本科阶段)南方科技大学,2018级保研率应该会提高到30%...
  17. 思科下一代数据中心Nexus7000优势
  18. python barrier_34.python 线程障碍对象Barrier
  19. Mysql优化——唯一索引和普通索引的选择
  20. 使用CARLA模拟器实现DQN自动驾驶(三)导航系统

热门文章

  1. IOC和AOP概念理解
  2. 文本情感分析思维导图
  3. 英语语法总结_01 五种基本句型
  4. JAVA基础之代码简洁之道
  5. 提示由于找不到MSVCR120.dll文件,怎么修复呢?MSVCR120.dll是什么文件?
  6. go 语言helloword
  7. 读《穷爸爸富爸爸》笔记
  8. 《富爸爸,穷爸爸》文摘
  9. 关于FLASH元件包含按钮的一个问题…
  10. u深度重装系统详细教程_u深度u盘重装系统步骤,深度u盘装win7系统教程