系统技术架构说明书Word文档下载推荐.docx
- 文档编号:874769
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:48
- 大小:454.87KB
系统技术架构说明书Word文档下载推荐.docx
《系统技术架构说明书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《系统技术架构说明书Word文档下载推荐.docx(48页珍藏版)》请在冰点文库上搜索。
数据库服务器 47
缓存服务器 47
图片文件服务器 47
系统部署拓扑图 47
系统部署结构图 48
技术性需求分析
一致的逻辑数据
一般来说,平台所有的服务接点都是这个数据库的客户端访问;
因此从逻辑上,任意服务网络接入点的数据应该是一致的。
优秀的网络环境适应性
从系统的实现角度考虑,要满足各种复杂的网络环境。
系统的兼容性
由于服务结点的数量巨大,其使用的平台和语言各不相同,需要能够容纳所有类型的服务结点;
优异的系统性能
从系统架构设计上需要考虑巨大量数据的处理引擎,从系统本身进行性能上的优化,而不是仅仅凭借于硬件服务器的性能。
开放的界面和接口
不仅个人用户能够方便地通过Web应用查询信息,同时也需要能够预留非GUI的交互界面的接口,以便使其它应用系统也能使用数据管理系统提供的信息服务,同时还需要为第三方软件预留标准的集成接口,使系统具有高度的可扩展性;
完备的操作日志管理策略
需要有完备的操作日志管理引擎,记录系统交互过程中的日志数据。
高度的安全性
利用JAVA所特有的安全性,更多的从系统角度去维护数据的安全,同时需要从数据库和服务器的角度提出安全维护的有效建议。
技术性设计思想和原则
最小成本原则
系统建设充分考虑目前已实施的业务系统的实际情况,充分利用原系统资源,在实现新系统
建设同时保护原有系统的资源。
任何一个系统的建设,如果不能合理和有效地利用现有的资源和之前的系统的资源,这样的系统应该算不了绝对的成功。
因此,在进行系统重建时,充分考虑如何利用以前的信息系统、网络和其他设备,并对以前实施的应用系统进行整合,一方面保证原有的设备可以重新利用,另一方面保证以前的应用重获新生。
在真正意义上做到既完成了新系统的建设又保护了原有设备和系统的资源。
安全性、可靠性、先进性原则
安全性与可靠性原则:
考虑到电子商务系统工程建设项目安全性、可靠性的需求,在系统设计中,应充分注意系统的安全性和可靠性,采用多种安全防范技术和措施,保障系统的信息安全,保障系统长期稳定可靠运行,同时在系统设计要充分考虑系统运行性能,达到“简便、实用、快捷、安全、准确”的目的。
由于IT技术发展的速度惊人。
因此,在电子
商务项目进行系统总体规划时,我们选择业界到目前为止先进和成熟的技术作为整个系统的技术架构,以保证系统有不断发展和扩充的余地。
系统总体设计的先进性原则主要体现在以下
几方面:
1)系统结构选择当前先进的SSH架构进行逻辑和业务和展示分层的架构进行系统开发;
2)软件的设计中利用先进的面向对象技术、设计模式、接口技术和组件技术来提高软件的通用性和复用性。
实用性、易用性、可扩展性原则
实用性原则
衡量一个电子商务系统的好坏决不是看它投入了多少、如何的先进,而是看它是否真正满足运营业务需求,是否真的符合真正的运营情况。
因此,在进行系统的建设时,我们始终不忘实用性原则,努力保证投资花在实处,保证建设出来的系统切切实实是所需要的,而不是一个富丽堂皇的空架子,光有一个外表而没有实际的内容。
实用性是每个信息系统在建设过程中所必须考虑的,从实际应用的角度来看,这个性能更加
重要。
为了提高系统的实用性,本系统考虑如下几个方面:
◆设计上充分考虑当前各业务层次、各环节管理中数据处理的便利和可行,把满足用户业务管理作为第一要素进行考虑;
◆采取总体设计、分步实施的技术方案,在总体设计的前提下,系统实施时先进行业务处理层及低层管理,稳步向中高层管理及全面自动化过渡。
这样做可以使系统始终与业务实际需求紧密连在一起,不但增加了系统的实用性,而且可使系统建设保持很好的连贯性;
◆全部人机操作设计均充分考虑不同使用者的实际需要;
◆用户接口及界面设计充分考虑人体结构特
征及视觉特征进行优化设计,界面尽可能美观大方,操作简便实用。
统一及一致性原则
在统一的用户界面风格前提下,实现各GUI
中各类按钮、图标、文字(字体、大小)、热键
(快捷键)的统一和一致,达到便于使用、便于学习、交互友好的目的。
人机工程及标准化原则
在保证界面风格统一、一致的基础上,按照人机工程原理,遵循IBM和Microsoft的界面设计标准,将界面的布局(包括按钮、菜单、显示框等)设计成符合操作者习惯的形式,并在界面颜色的搭配上满足操作者长时间工作要求,提供一个人性化的人机操作环境,以保证用户使用的舒适性。
业务引导及易用性原则
充分考虑业务的管理需求,在界面的菜单及功能的组合设计中,将界面的操作顺序按业务归类,以便操作的有效引导,保证软件的易用性。
同时,在各功能名称的用词、信息提示文字等方面,使用政府审批业务的规范化、习惯化用词,以保证软件使用者的习惯性,符合现有政府审批管理模式,有利于操作者在较快的时间熟练用好软件。
友好及方便性原则
鼠标、键盘的灵活输入方式;
热键的使用,以保证各种业务数据信息的录入界面,更新维护界面和记录增删界面及部门内部信息查询界面和信息统计报表界面等使用的方便性、友好性,确保各种业务信息数据都能通过用户界面方便地、快速录入。
扩展性和适应性原则
扩展性和适应性是系统升级前要考虑的首要元素,为了进一步让客户能够降低成本来完成未来可预见的系统升级开发,系统在设计时就充分考虑到实际系统在今后工作发展而产生的升级需求,尽量保证在原有代码基础上容易适应、容易修改和升级的目标。
数据共享原则
对所有的数据采用合理的数据结构,把它们有效地组织好,进行统一维护管理,避免数据重复,减少冗余,提高准确性和可靠性,保证数据的统一性和完整性。
系统技术架构的设计
技术架构的特点
我们的技术架构有以下特点:
◆采用目前安全性能高,扩展性好,框架技术最为完善JAVA语言作为系统开发的语言。
◆采用SSH框架技术,使系统能够分层开发,各层之间逻辑分明,层与层之间提供接口方式来实现业务和数据的沟通。
让系统具有极强的扩展性。
◆基于组件技术,力求将变化封装在组件内部。
对应组件可以对外提供API。
◆适应能力强,同步、异步都能处理,既能满足快速反映的业务的需求,又能满足大数据量、复杂的、异步的业务的需求。
◆与OS、中间件平台、数据库系统无关。
◆具有很好的可扩展性。
模块化使得系统很容易在纵向和水平两个方向拓展:
一方面可以将系统升级为更大、更有力的平台,同时也可以适当增加规模来增强系统的网络应用。
在扩充或修改功能时,基本不会破坏原有结构的稳定性。
◆强而可靠的数据库搜索引擎
◆实用且安全的SEO搜索引擎设计
◆支持分布式部署的缓存引擎
系统的架构图
技术架构图
电话
短信
手机客户端 触摸屏
传真
Web接入
邮件
IM
多渠道整合
应
用服务
商品系统
内容系统 广告系统 频道系统 订单系统
其它业务
系统
全网电子商务服务平台
应用监控
网络监控
全网基础应用系统(订单人员权限商品物流财务报表等)
运营管理
安全服务
运营商接口 支付网关接口 物流接口 呼叫中心接口 短信接口
用集成
License管理
商家社区服务
邮件接口
ERP接口 数据认证接口 其它数据接口 开发社区
全网电子商务平台API
全网运营支撑平台
界面引擎 中间件引擎 搜索引擎
规则引擎
缓存引擎
SEO引擎
接口引擎
基
础框架
其它数据引
擎
多种开发语言 GoogleMap 基于COMPASS 自定义的路径 支持分布式的 实用可靠的
Jsp,velocity. RSS订阅 的搜索引擎 规则引擎 Memcache缓存 SEO优化引擎
接口引擎帮助您无缝对接第
三方接口
实现数据的
无缝对接
全网电子商务平台服务架构(SSH=Spring2.5+Struts+Hibernate3.0)
高可用性高扩展性高可靠性 高安全性 高性能
数
据服务
业
务
库
商品
数据
内容 广告 频道
数据 数据 数据
订单
会员
其它
运营数据
业务数据
据仓库
数据集合
营销 销售 供应
数据 数据 链数据集
集合 集合 合
数据库整合
系统技术架构图
系统请求数据处理流程图
6.输出
html
1.Http请求
Controller
StrutsServlet
调用PubAction
Action(PubAction)
View
4.Forward到Jsp
jsp
内部方法
ActionperformMethod
2.操作数据库
获取数据
3.设置view中显示数据
5.调用方法
Model
Util
BO
(PubHibernate)
FormBean(PubForm)
Cache
(Memcache)
Helper
Model(PubBean)
Manager
体系结构图
JSp,taglib,javabean,cache,helper,html
VIEW
Struts-config.xml
视图
层
formBean
继承PubAction
继承PubForm
逻辑数据接口
业务逻辑
Spring
处理
业务逻辑数
据
继承
PubSpringUtilImpl
业务数据接口
数据接口
Hibernate.cfg.xml
JAVABEAN
DAO
Schama.xml
继承PubBean
继承PubHibernate
继承hibernate映射
文件
ORACLE MYSQL MSSQL
系统核心功能分布图
访客/个人会员/企业会员/商家会员/客服人员/总平台管理人员/地区
管理人员
Internet接入
语音接入
其他接入
商城接入层
总平台门户
地区门户
企业会员门户
商家会员门户
客服门户
运营后台门户
商城核心业务层
商品浏览
商品搜索
商户申请
商户自管理
会员管理
商户管理
权限管理
客服销售
商品购买
会员注册
商品管理
虚拟商品管理
订单管理
代金卷管理
客服角色管理
优惠券管理
会员投诉
投诉管理
统计报表
运营监控
流量统计
业务定制
支付管理
商品促销
物流管理
账号权限管理
内容管理
地区管理
商机管理
总平台门户、地区门户
企业会员门户、商家会员门户 客服门户、运营后台门户、地区运营后台门户
商品排序 会员自管理
缺货管理 咨询管理
排行榜管理商品推荐管理
支付方式
管理
客服查询
订单管理 积分管理
促销管理 对账结算管理
对账结算管理
客服受理记录
商品咨询 商品评论
退货管理 退款管理
促销管理
关键字过滤管理
评论管理
调查问卷管理
浏览历史 留言板 信息管理 订单管理 统计分析 日志查询
广告管理
搜索及静态页生成
客服报表系统
帮助管理
网站联盟管理网站联盟管理
商城基础服务层 接口服务层
商品管理服务
订单管理服务
会员管理服务
系统管理服务
客服管理服务
促销管理服务
系统配置服务
系统安全服务
内容管理服务
日志管理服务
缓存管理服务
权限管理服务
中文外贸平台接口
支付系统接口
物流系统接口
短信接口
身份验证接口
IM接口
诚信认证等接口
商城核心数据层
会员/商户/商品/订单/营销/统计/监控/对账/结算/内容/促销//等库
数据中心
J2EE/Security/PKI
ORACLE10G
架构层次的说明
数据库层
对于平台中的所有应用,都存在着各种各样的配置信息、业务数据、系统运行状态等信息。
数据库层对这些数据信息本身进行归档,提供快速查询的底层接口,并保证数据的完整性、可靠性。
在数据库方面,我们的程序是可以无缝对接主流数据库的包括Oracle,Mysql,和MSSql,但建议采用Oracle 或者是MySQL。
因为他们和程序一样具备跨平台的特性,但这两种数据库分别有不同的适用环境。
Oracle
◆适合大型的电子商务应用。
◆能使用所有的商城平台功能。
如访问量排行榜、降价排行榜、销售排行榜、访问量统计等等,就以往的经验来看,这些功能每天要处理的数据都会超过一千万。
这种数据量如果使用传统的统计方法,统计一次的时间就可能会以天来计算了。
如果使用Oracle,再配合我们专门对Oracle进行优化的高效率的统计程序,那么只需十数秒便可完成。
◆此外,如果只用一台数据库无法应付日益增长
的服务器访问量,可以使用OracleRAC(真正应用集群),通过增加数据库服务器进行集群。
MySQL
◆适合中小型的电子商务应用。
◆无法使用商城平台一些高级应用,如排行榜、统计分析、MIS 系统对接等。
这是由于MySQL设计上强调访问速度,牺牲了一些数据库的高级功能,虽然用程序也可以实现这些功能,但是在性能上无法满足需求。
◆比较难实现数据库集群。
中间件层
中间件层主要是购通平台使用的J2EE中间件,包括平台使用到的应用服务器和中间件技术。
一、应用服务器
应用服务器为购通提供的整个J2EE平台实现,商城系统基础服务层和应用层、业务层都是建立在应用服务器之上。
购通设计上遵循SUN公司提出的J2EE规范,这样能够尽可能的保证在不同的J2EE应用服务器中进行移植。
经过测试购通平台支持Tomcat、WebLogic、
JBoss,webShare这几种J2EE应用服务器。
二、中间件技术
本着重用的设计原则,购通在一些功能中采用了已有的成熟技术,这些都是经过实践考验的中间件。
主要以java标准包和开源项目为主,大部分都针对系统作了相应调整,以便适合系统的需要。
1.Apachecommons:
著名的开源组织Apache的一个java工具包,提供很多实用的功能。
1)commons-beanutils:
提供对Java反射和自省API的包装。
在平台中用于通用的接口设计。
2)commons-codec:
包含一些通用的编码解码算法。
Hex,Base64,以及URLencoder。
平台中主要用来做消息摘要,实现数据加密等功能。
3)commons-collections:
提供一个类包来扩展和增加标准的JavaCollection框架。
提供了比j2sdk更全面的数据结构,平台中继承并实现了一些特殊的数据结构。
4)commons-pool:
提供了通用对象池接口,一个用于创建模块化对象池的工具包,以及通常的对象池。
我们在原有的基础上进行了优化,在性能和使
用性方面有所提高。
5)commons-dbcp:
这是一个基于apache的对象池(apachecommonspool)实现的数据库连接池。
我们在原有的基础上进行了优化,对数据库连
接进行了特别的处理,防止数据库连接泄漏的问题,并提供了监控的功能。
6)commons-discovery:
供工具来定位资源(包括类),通过使用各种模式来映射服务/引用名称和资源名称。
7)commons-el:
提供在JSP2.0规范中定义的EL表达式的解释器。
对平台中的JSP提供EL表达式支持。
8)commons-fileupload:
强大和高性能的文件上传功能。
平台中被用于上传各种图片、Flash、文档等资源,我们在原有的基础上进行了优化。
9)commons-logging:
提供通用的日志操作接口。
主要用于程序调试和服务器日常的日志输出。
10)commons-validator:
提供了一个简单的,可扩展的框架来在一个XML文件中定义校验器(校验方法)和校验规则。
支持校验规则的和错误消息的国际化。
平台中用来校验各种xml数据。
2.Dom4j:
Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。
它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。
主要用来处理XML数据。
XML在商城有广泛的应用,主要是作为配置文件使用。
由于XML严格的格式要求和层次结构,也有用来作为参数在HTML表单中传递。
如组合商品功能,因为组合商品中的商品是由管理员挑选的,参数数量并不确定,如果每从组合商品中添加
/删除一个商品都直接更新到数据库话,会对系统造成负荷。
所以,在组合商品的管理中,将操作的数据类转换成XML传递,就可以一次进行修改。
3.Hibernate:
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
在平台中,我们采用Hibernate进行数据库操
作,只有在一些对数据库性能有特别要求的模块,才直接使用jdbc进行连接。
4.Memcache:
Memcache是一个支持分布式部署的动态缓存引擎。
5.Spring定时器:
我们主要用Spring定时器管理以下一些定时任务:
1)年排行榜后台更新进程:
自动计算年排行榜。
2)月排行榜后台更新进程:
自动计算月排行榜。
3)周排行榜后台更新进程:
自动计算周排行榜。
4)日排行榜后台更新进程:
自动计算日排行榜。
5)更新对象缓存:
实现对象缓存的更新,处理那些长期没被再一次访问的对象缓存。
6)清页面缓存:
当管理员使用的手工刷新页
面缓存的功能时,系统会将这些需要刷新的缓存加到一个队列中,由本进程负责刷新。
7)相关产品自动实现间隔:
相关产品的计算对系统消耗比较大,所以系统不会对所有几十万个商品进行计算,只有在用户查看单个商品时算出这个商品的相关产品并进行缓存。
那么当用户下一次访问这个商品的相关产品时就直接从缓存中读取出来。
而这个进程就是为了定时更新这个缓存。
8)自动推荐后台更新进程:
进程根据商品推
荐规则进行自动推荐。
9)新闻推荐后台更新进程:
进程根据新闻推荐规则进行自动推荐。
10)关键字后台进程:
当用户在前台搜索栏中输入一个查询值时,系统并不马上将其统计到关键字,而是放到内存中,由此进程定时统计。
11)保存访问量信息进程:
用户每访问一次系
统,系统并不马上统计,而是放到内存中,由此进程定时保存到数据库,供统计进程进行统计。
12)年访问量排行计算:
计算年访问量排行榜。
13)月访问量排行计算:
计算月访问量排行
榜。
14)周访问量排行计算:
计算周访问量排行榜。
15)日访问量排行计算:
计算日访问量排行榜。
16)年降价排行计算:
计算年降价排行榜。
17)月降价排行计算:
计算月降价排行榜。
18)周降价排行计算:
计算周降价排行榜。
19)日降价排行计算:
计算日降价排行榜。
20)统计计算:
每天对访问量进行统计。
21)生成订阅邮件列表进程:
根据用户的订阅设置,生成需要发送的邮件队列。
22)发送订阅邮件进程:
根据要发送的邮件队
列发送邮件。
23)拍卖自动出价进程:
实现拍卖模块中的自动出价功能。
6.Log4j:
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;
我们也可以控制每一条日志的输出格式;
通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。
最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
这是一个可选包,如果不使用Log4j的话,
commons-logging会自动使用SUNJ2SDK的日志包,不过我们还是推荐使用Log4j,它的功能非常强大。
7.Compass:
Compass 是一个开放源程序的搜寻器引擎,利用它可以轻易地为Java软件加入全文搜寻功能。
Compass的最主要工作是替文件的每一个字
作索引,索引让搜寻的效率比传统的逐字比较大大提高,Compass提供一组解读,过滤,分析文件,编排和使用索引的API,它的强大之处除了高效和简单外,是最重要的是使使用者可以随时应自已需要自订其功能。
我们使用Compass建立索引,并在这基础上实现了全文搜索功能。
8.Ant:
Ant是一个基于Java的自动化脚本引擎,脚本格式为XML。
我们除了用Ant做Java编译相关任务外,还通过插件实现很
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 系统 技术 架构 说明书