版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-PAGE . z.- - - z -全网电子商务平台技术架构说明书2010年3月18日友联慧通科技目 录 TOC o 1-3 h z u HYPERLINK l _Toc256781728技术性需求分析 PAGEREF _Toc256781728 h 4HYPERLINK l _Toc256781729一致的逻辑数据 PAGEREF _Toc256781729 h 4HYPERLINK l _Toc256781730优秀的网络环境适应性 PAGEREF _Toc256781730 h 4HYPERLINK l _Toc256781731系统的兼容性 PAGEREF _Toc256781731
2、 h 4HYPERLINK l _Toc256781732优异的系统性能 PAGEREF _Toc256781732 h 4HYPERLINK l _Toc256781733开放的界面和接口 PAGEREF _Toc256781733 h 4HYPERLINK l _Toc256781734完备的操作日志管理策略 PAGEREF _Toc256781734 h 4HYPERLINK l _Toc256781735高度的平安性 PAGEREF _Toc256781735 h 4HYPERLINK l _Toc256781736技术性设计思想和原则 PAGEREF _Toc256781736 h
3、5HYPERLINK l _Toc256781737最小本钱原则 PAGEREF _Toc256781737 h 5HYPERLINK l _Toc256781738平安性、可靠性、先进性原则 PAGEREF _Toc256781738 h 5HYPERLINK l _Toc256781739平安性与可靠性原则 PAGEREF _Toc256781739 h 5HYPERLINK l _Toc256781740先进性原则: PAGEREF _Toc256781740 h 5HYPERLINK l _Toc256781741实用性、易用性、可扩展性原则 PAGEREF _Toc256781741
4、 h 5HYPERLINK l _Toc256781742实用性原则 PAGEREF _Toc256781742 h 5HYPERLINK l _Toc256781743统一及一致性原则 PAGEREF _Toc256781743 h 6HYPERLINK l _Toc256781744业务引导及易用性原则 PAGEREF _Toc256781744 h 6HYPERLINK l _Toc256781745友好及方便性原则 PAGEREF _Toc256781745 h6HYPERLINK l _Toc256781746扩展性和适应性原则 PAGEREF _Toc256781746 h 6HY
5、PERLINK l _Toc256781747数据共享原则 PAGEREF _Toc256781747 h 7HYPERLINK l _Toc256781748系统技术架构的设计 PAGEREF _Toc256781748 h 7HYPERLINK l _Toc256781749技术架构的特点 PAGEREF _Toc256781749 h 7HYPERLINK l _Toc256781750系统的架构图 PAGEREF _Toc256781750 h 7HYPERLINK l _Toc256781751技术架构图 PAGEREF _Toc256781751 h 7HYPERLINK l _T
6、oc256781752系统请求数据处理流程图 PAGEREF _Toc256781752 h 9HYPERLINK l _Toc256781753体系构造图 PAGEREF _Toc256781753 h 10HYPERLINK l _Toc256781754系统核心功能分布图 PAGEREF _Toc256781754 h 11HYPERLINK l _Toc256781755架构层次的说明 PAGEREF _Toc256781755 h 11HYPERLINK l _Toc256781756数据库层 PAGEREF _Toc256781756 h 11HYPERLINK l _Toc256
7、781757中间件层 PAGEREF _Toc256781757 h 12HYPERLINK l _Toc256781758根底效劳层 PAGEREF _Toc256781758 h 16HYPERLINK l _Toc256781759应用层 PAGEREF _Toc256781759 h 20HYPERLINK l _Toc256781760业务表现层和系统接口层 PAGEREF _Toc256781760 h 21HYPERLINK l _Toc256781761系统部署环境 PAGEREF _Toc256781761 h 22HYPERLINK l _Toc256781762商城平台部
8、署环境 PAGEREF _Toc256781762 h 22HYPERLINK l _Toc256781763运行平台 PAGEREF _Toc256781763 h 22HYPERLINK l _Toc256781764操作系统 PAGEREF _Toc256781764 h 22HYPERLINK l _Toc256781765应用效劳器 PAGEREF _Toc256781765 h 23HYPERLINK l _Toc256781766Web效劳器 PAGEREF _Toc256781766 h 23HYPERLINK l _Toc256781767数据库效劳器 PAGEREF _To
9、c256781767 h 23HYPERLINK l _Toc256781768缓存效劳器 PAGEREF _Toc256781768 h 23HYPERLINK l _Toc256781769图片文件效劳器 PAGEREF _Toc256781769 h 23HYPERLINK l _Toc256781770系统部署拓扑图 PAGEREF _Toc256781770 h 23HYPERLINK l _Toc256781771系统部署构造图 PAGEREF _Toc256781771 h 24技术性需求分析一致的逻辑数据一般来说,平台所有的效劳接点都是这个数据库的客户端访问;因此从逻辑上,任意
10、效劳网络接入点的数据应该是一致的。优秀的网络环境适应性从系统的实现角度考虑,要满足各种复杂的网络环境。系统的兼容性由于效劳结点的数量巨大,其使用的平台和语言各不一样,需要能够容纳所有类型的效劳结点;优异的系统性能从系统架构设计上需要考虑巨大量数据的处理引擎,从系统本身进展性能上的优化,而不是仅仅凭借于硬件效劳器的性能。开放的界面和接口不仅个人用户能够方便地通过Web应用查询信息,同时也需要能够预留非GUI的交互界面的接口,以便使其它应用系统也能使用数据管理系统提供的信息效劳,同时还需要为第三方软件预留标准的集成接口,使系统具有高度的可扩展性;完备的操作日志管理策略需要有完备的操作日志管理引擎,
11、记录系统交互过程中的日志数据。高度的平安性利用JAVA所特有的平安性,更多的从系统角度去维护数据的平安,同时需要从数据库和效劳器的角度提出平安维护的有效建议。技术性设计思想和原则最小本钱原则系统建立充分考虑目前已实施的业务系统的实际情况,充分利用原系统资源,在实现新系统建立同时保护原有系统的资源。任何一个系统的建立,如果不能合理和有效地利用现有的资源和之前的系统的资源,这样的系统应该算不了绝对的成功。因此,在进展系统重建时,充分考虑如何利用以前的信息系统、网络和其他设备,并对以前实施的应用系统进展整合,一方面保证原有的设备可以重新利用,另一方面保证以前的应用重获新生。在真正意义上做到既完成了新
12、系统的建立又保护了原有设备和系统的资源。平安性、可靠性、先进性原则平安性与可靠性原则:考虑到电子商务系统工程建立工程平安性、可靠性的需求,在系统设计中,应充分注意系统的平安性和可靠性,采用多种平安防技术和措施,保障系统的信息平安,保障系统长期稳定可靠运行,同时在系统设计要充分考虑系统运行性能,到达简便、实用、快捷、平安、准确的目的。先进性原则:由于IT技术开展的速度惊人。因此,在电子商务工程进展系统总体规划时,我们选择业界到目前为止先进和成熟的技术作为整个系统的技术架构,以保证系统有不断开展和扩大的余地。系统总体设计的先进性原则主要表达在以下几方面:1 系统构造选择当前先进的SSH架构进展逻辑
13、和业务和展示分层的架构进展系统开发;2 软件的设计中利用先进的面向对象技术、设计模式、接口技术和组件技术来提高软件的通用性和复用性。实用性、易用性、可扩展性原则实用性原则衡量一个电子商务系统的好坏决不是看它投入了多少、如何的先进,而是看它是否真正满足运营业务需求,是否真的符合真正的运营情况。因此,在进展系统的建立时,我们始终不忘实用性原则,努力保证投资花在实处,保证建立出来的系统切切实实是所需要的,而不是一个华丽堂皇的空架子,光有一个外表而没有实际的容。实用性是每个信息系统在建立过程中所必须考虑的,从实际应用的角度来看,这个性能更加重要。为了提高系统的实用性,本系统考虑如下几个方面:设计上充分
14、考虑当前各业务层次、各环节管理中数据处理的便利和可行,把满足用户业务管理作为第一要素进展考虑;采取总体设计、分步实施的技术方案,在总体设计的前提下,系统实施时先进展业务处理层及低层管理,稳步向中高层管理及全面自动化过渡。这样做可以使系统始终与业务实际需求严密连在一起,不但增加了系统的实用性,而且可使系统建立保持很好的连贯性;全部人机操作设计均充分考虑不同使用者的实际需要;用户接口及界面设计充分考虑人体构造特征及视觉特征进展优化设计,界面尽可能美观大方,操作简便实用。统一及一致性原则在统一的用户界面风格前提下,实现各GUI中各类按钮、图标、文字字体、大小、热键快捷键的统一和一致,到达便于使用、便
15、于学习、交互友好的目的。人机工程及标准化原则 在保证界面风格统一、一致的根底上,按照人机工程原理,遵循IBM 和 Microsoft的界面设计标准,将界面的布局包括按钮、菜单、显示框等设计成符合操作者习惯的形式,并在界面颜色的搭配上满足操作者长时间工作要求,提供一个人性化的人机操作环境,以保证用户使用的舒适性。业务引导及易用性原则充分考虑业务的管理需求,在界面的菜单及功能的组合设计中,将界面的操作顺序按业务归类,以便操作的有效引导,保证软件的易用性。同时,在各功能名称的用词、信息提示文字等方面,使用政府审批业务的规化、习惯化用词,以保证软件使用者的习惯性,符合现有政府审批管理模式,有利于操作者
16、在较快的时间熟练用好软件。友好及方便性原则 鼠标、键盘的灵活输入方式;热键的使用,以保证各种业务数据信息的录入界面,更新维护界面和记录增删界面及部门部信息查询界面和信息统计报表界面等使用的方便性、友好性,确保各种业务信息数据都能通过用户界面方便地、快速录入。扩展性和适应性原则扩展性和适应性是系统升级前要考虑的首要元素,为了进一步让客户能够降低本钱来完成未来可预见的系统升级开发,系统在设计时就充分考虑到实际系统在今后工作开展而产生的升级需求,尽量保证在原有代码根底上容易适应、容易修改和升级的目标。数据共享原则对所有的数据采用合理的数据构造,把它们有效地组织好,进展统一维护管理,防止数据重复,减少
17、冗余,提高准确性和可靠性,保证数据的统一性和完整性。系统技术架构的设计技术架构的特点我们的技术架构有以下特点:采用目前平安性能高,扩展性好,框架技术最为完善JAVA语言作为系统开发的语言。采用SSH框架技术,使系统能够分层开发,各层之间逻辑清楚,层与层之间提供接口方式来实现业务和数据的沟通。让系统具有极强的扩展性。 基于组件技术,力求将变化封装在组件部。对应组件可以对外提供API。 适应能力强,同步、异步都能处理,既能满足快速反映的业务的需求,又能满足大数据量、复杂的、异步的业务的需求。 与OS、中间件平台、数据库系统无关。 具有很好的可扩展性。模块化使得系统很容易在纵向和水平两个方向拓展:一
18、方面可以将系统升级为更大、更有力的平台,同时也可以适当增加规模来增强系统的网络应用。在扩大或修改功能时,根本不会破坏原有构造的稳定性。强而可靠的数据库搜索引擎 实用且平安的SEO搜索引擎设计支持分布式部署的缓存引擎系统的架构图技术架构图系统技术架构图系统请求数据处理流程图体系构造图体系构造图系统核心功能分布图架构层次的说明数据库层对于平台中的所有应用,都存在着各种各样的配置信息、业务数据、系统运行状态等信息。数据库层对这些数据信息本身进展归档,提供快速查询的底层接口,并保证数据的完整性、可靠性。 在数据库方面,我们的程序是可以无缝对接主流数据库的包括Oracle,Mysql,和MSSql,但建
19、议采用Oracle 或者是 MySQL。因为他们和程序一样具备跨平台的特性,但这两种数据库分别有不同的适用环境。Oracle 适合大型的电子商务应用。 能使用所有的商城平台功能。如访问量排行榜、降价排行榜、销售排行榜、访问量统计等等,就以往的经历来看,这些功能每天要处理的数据都会超过一千万。这种数据量如果使用传统的统计方法,统计一次的时间就可能会以天来计算了。如果使用Oracle,再配合我们专门对Oracle进展优化的高效率的统计程序,则只需十数秒便可完成。 此外,如果只用一台数据库无法应付日益增长的效劳器访问量,可以使用Oracle RAC真正应用集群,通过增加数据库效劳器进展集群。MySQ
20、L 适合中小型的电子商务应用。 无法使用商城平台一些高级应用,如排行榜、统计分析、MIS系统对接等。这是由于MySQL设计上强调访问速度,牺牲了一些数据库的高级功能,虽然用程序也可以实现这些功能,但是在性能上无法满足需求。 比拟难实现数据库集群。中间件层中间件层主要是购通平台使用的J2EE中间件,包括平台使用到的应用效劳器和中间件技术。 一、应用效劳器 应用效劳器为购通提供的整个J2EE平台实现,商城系统根底效劳层和应用层、业务层都是建立在应用效劳器之上。 购通设计上遵循SUN公司提出的J2EE规,这样能够尽可能的保证在不同的J2EE应用效劳器中进展移植。 经过测试购通平台支持Tomcat、W
21、ebLogic、oss,webShare这几种J2EE应用效劳器。 二、中间件技术 本着重用的设计原则,购通在一些功能中采用了已有的成熟技术,这些都是经过实践考验的中间件。主要以java标准包和开源工程为主,大局部都针对系统作了相应调整,以便适合系统的需要。 1. Apache mons:著名的开源组织Apache的一个java工具包,提供很多实用的功能。 1) mons-beanutils: 提供对Java反射和自省API的包装。 在平台中用于通用的接口设计。 2) mons-codec: 包含一些通用的编码解码算法。He*,Base64, 以及URL encoder。 平台中主要用来做消息
22、摘要,实现数据加密等功能。 3) mons-collections: 提供一个类包来扩展和增加标准的Java Collection框架。提供了比j2sdk更全面的数据构造,平台中继承并实现了一些特殊的数据构造。 4) mons-pool: 提供了通用对象池接口,一个用于创立模块化对象池的工具包,以及通常的对象池。 我们在原有的根底上进展了优化,在性能和使用性方面有所提高。 5) mons-dbcp: 这是一个基于apache的对象池apache mons pool实现的数据库连接池。 我们在原有的根底上进展了优化,对数据库连接进展了特别的处理,防止数据库连接泄漏的问题,并提供了监控的功能。 6
23、) mons-discovery: 供工具来定位资源包括类 ,通过使用各种模式来映射效劳/引用名称和资源名称。 7) mons-el: 提供在JSP2.0规中定义的EL表达式的解释器。 对平台中的JSP提供EL表达式支持。 8) mons-fileupload: 强大和高性能的文件上传功能。 平台中被用于上传各种图片、Flash、文档等资源,我们在原有的根底上进展了优化。 9) mons-logging: 提供通用的日志操作接口。 主要用于程序调试和效劳器日常的日志输出。 10) mons-validator: 提供了一个简单的,可扩展的框架来在一个*ML文件中定义校验器校验方法和校验规则。支
24、持校验规则的和错误消息的国际化。 平台中用来校验各种*ml数据。 2. Dom4j: Dom4j是一个易用的、开源的库,用于*ML,*Path和*SLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SA*和JA*P。 主要用来处理*ML数据。 *ML在商城有广泛的应用,主要是作为配置文件使用。由于*ML严格的格式要求和层次构造,也有用来作为参数在HTML表单中传递。如组合商品功能,因为组合商品中的商品是由管理员挑选的,参数数量并不确定,如果每从组合商品中添加/删除一个商品都直接更新到数据库话,会对系统造成负荷。所以,在组合商品的管理中,将操作的数据类转换成*ML传递,就可以一
25、次进展修改。 3. Hibernate: Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进展了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用E的J2EE架构中取代CMP,完成数据持久化的重任。 在平台中,我们采用Hibernate进展数据库操作,只有在一些对数据库性能有特别要求的模块,才直接使用jdbc进展连接。4.Memcache: Memcache是一个
26、支持分布式部署的动态缓存引擎。5. Spring定时器: 我们主要用Spring定时器管理以下一些定时任务: 1) 年排行榜后台更新进程:自动计算年排行榜。 2) 月排行榜后台更新进程:自动计算月排行榜。 3) 周排行榜后台更新进程:自动计算周排行榜。 4) 日排行榜后台更新进程:自动计算日排行榜。 5) 更新对象缓存:实现对象缓存的更新,处理那些长期没被再一次访问的对象缓存。 6) 清页面缓存:当管理员使用的手工刷新页面缓存的功能时,系统会将这些需要刷新的缓存加到一个队列中,由本进程负责刷新。 7) 相关产品自动实现间隔:相关产品的计算对系统消耗比拟大,所以系统不会对所有几十万个商品进展计算
27、,只有在用户查看单个商品时算出这个商品的相关产品并进展缓存。则当用户下一次访问这个商品的相关产品时就直接从缓存中读取出来。而这个进程就是为了定时更新这个缓存。 8) 自动推荐后台更新进程:进程根据商品推荐规则进展自动推荐。 9) 新闻推荐后台更新进程:进程根据新闻推荐规则进展自动推荐。 10) 关键字后台进程:当用户在前台搜索栏中输入一个查询值时,系统并不马上将其统计到关键字,而是放到存中,由此进程定时统计。 11) 保存访问量信息进程:用户每访问一次系统,系统并不马上统计,而是放到存中,由此进程定时保存到数据库,供统计进程进展统计。 12) 年访问量排行计算:计算年访问量排行榜。 13) 月
28、访问量排行计算:计算月访问量排行榜。 14) 周访问量排行计算:计算周访问量排行榜。 15) 日访问量排行计算:计算日访问量排行榜。 16) 年降价排行计算:计算年降价排行榜。 17) 月降价排行计算:计算月降价排行榜。 18) 周降价排行计算:计算周降价排行榜。 19) 日降价排行计算:计算日降价排行榜。 20) 统计计算:每天对访问量进展统计。 21) 生成订阅列表进程:根据用户的订阅设置,生成需要发送的队列。 22) 发送订阅进程:根据要发送的队列发送。 23) 拍卖自动出价进程:实现拍卖模块中的自动出价功能。 6. Log4j: Log4j是Apache的一个开放源代码工程,通过使用L
29、og4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口效劳器、NT的事件记录器、UNI* Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进展配置,而不需要修改应用的代码。 这是一个可选包,如果不使用Log4j的话,mons-logging会自动使用SUN J2SDK的日志包,不过我们还是推荐使用Log4j,它的功能非常强大。7. pass:pass是一个开放源程序的搜寻器引擎,利用它可以轻易地为Java软件参加全文搜寻功能。pass的
30、最主要工作是替文件的每一个字作索引,索引让搜寻的效率比传统的逐字比拟大大提高,pass提供一组解读,过滤,分析文件,编排和使用索引的API,它的强大之处除了高效和简单外,是最重要的是使使用者可以随时应自已需要自订其功能。 我们使用pass建立索引,并在这根底上实现了全文搜索功能。8. Ant: Ant是一个基于Java的自动化脚本引擎,脚本格式为*ML。 我们除了用Ant做Java编译相关任务外,还通过插件实现很多应用的调用。包括程序编译、打包、Hibernate配置文件自动生成、部署、以及单元测试等操作。 当一个代码工程大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言
31、中有make脚本来帮助这些工作的批量完成。在Java中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,Ant本身就是这样一个流程脚本引擎,用于自动化调用程序完成工程的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于*ML的,比make脚本来说还要好维护一些。9. A*is: A*is是一个SOAP引擎,提供创立效劳器端、客户端和网关SOAP操作的根本框架。SOAP是被广泛作为新一代跨平台、跨语言分布计算Web Services的重要局部。 商城平台使用A*is提供WebService支持,广泛应用于通用数据接口,对外系统提供效劳等功能。 如: 1
32、) 商品查询效劳:提供接口让外接系统可以查到平台中的商品信息。 2) 新闻发布效劳:提供接口让外接系统可以取到各类新闻。 3) 订单效劳:提供接口让外接系统可以在平台中生成订单,并获取各种订单信息。 注:上述效劳都有严格的权限控制。 10. JavaMail: JavaMail是Sun发布的用来处理email的API。它可以方便地执行一些常用的传输。 我们使用JavaMail实现了平台中发送、群发等相关功能,供业务系统使用。 11. JSTL: JSP 标准标记库JSP Standard Tag Library,JSTL是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭
33、代和条件判断、数据管理格式化、*ML 操作以及数据库访问。 我们使用JSTL封装各种业务逻辑。 12. JUnit: JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架regression testing framework。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何How完成功能和完成什么样What的功能。 我们主要用JUnit来进展单元测试。根底效劳层根底效劳层构建于J2EE平台之上,借助于中间件的接口效劳,提供电子商务平台系统所需要的通用效劳接口组件。系统将提供以下主要的效劳接口支撑不同业务需求的实现。 栏目管理模块:
34、栏目是一个抽象资源对象,是一种特殊的容类型。栏目可以表示产品、新闻信息类别、资源节点、导航栏的项、菜单中的项等等。栏目是一种组织管理型的资源。 系统设计上支持多级子栏目,采用虚拟文件系统Virtual File System技术以支持直观的树型导航风格,一个栏目节点相当于一个虚拟的文件目录。 对于大型电子商务系统,栏目的节点是个非常大的数字,这对系统栏目树展示的速度和性能有极高要求。考虑到以上原因系统采取了栏目对象缓存策略,同时对于页面节点的呈现通过动态JavaScript输出的技术,从而使系统能很好的支持上万个栏目数据节点操作管理。能平滑、高效的展示树型风格的栏目构造。 用户权限管理模块:
35、大型电子商务应用系统有用户多,模块多,权限多的特点,因此必须采用分组的用户管理系统,并设置一个具有最高权限的管理员,负责对整个系统用户设置,为每个用户角色、用户指定不同的权限,依照不同的权限在系统中可以使用不同的功能。 系统设置了Administrator用户组,并设置了root这个具有最高权限、不可删除的用户。您可以根据您的需要使用root这一个管理员用户。管理员可以创立、编辑和删除用户组,您可以根据您的需要给每个用户组合理的权限划分,并给每个用户组添加、编辑和删除用户。用户登录系统后,系统会根据该用户的权限提供相应的功能,并对用户的每个操作检查用户的使用权限。 系统采用Window用户权限
36、的思想,将用户、用户组的权限通过各个栏目节点进展绑定,在各个栏目节点上实现继承与非继承的设置管理,从而使管理员可以进展灵活的配置。 属性管理模块: 在现实情况中,不同的事物对象存在其特殊的信息描述;比方一个手机,存在 网络类型GSM、外观样式翻盖等等;同时这些特殊的信息描述在同类别的数据对象下经常存在共性;比方TCL和 联想 生产的手机,应该都存在以上两种属性的描述。 针对以上的情况,系统进展了一个数据抽象,定义了一套属性管理组件,可以方便、有效的描述相关的需求情况,同时对于存在共性描述的对象采用继承模式来描述,从而很好的表现一个事物对象的特征。 继承性管理模块: 继承是面向对象接口特性之一。
37、考虑到抽象事物的通用性,系统通过一个通用的对象继承模型接口,对所有需要实现继承的功能提供根底的支持。从而提高系统的重用性和降低系统的偶合度。 日志效劳管理模块: 日志是一个成熟的电子商务应用系统所必备的功能。日志可以用于数据统计,为系统其他功能提供初始数据;用于查看一个对象的修改历史记录,用于方便追踪对象的修改状态和明确事务责任。 通过对系统各种操作数据的分析,根据各操作功能,系统将日志进展类别的划分: 1、系统日志:记录系统各种操作的信息数据。比方:用户*个时间登陆了系统 2、商品日志:记录系统商品数据发生改变的信息。比方:商品价格发生变化 3、信息日志:记录系统信息数据发生改变的信息。比方
38、:*管理员增加了一个新的促销公告 4、订单日志:记录系统订单数据发生改变的信息。比方:*个订单已经进展了送货处理 系统通过抽象出一个Log日志接口,采用Abstract Factory 模式,通过不同的构造参数来获取不同分类的Log日志实现。系统将各中类别下的日志,又区分不同的操作。日志组件将通过抽象和封装后,给各功能模块提供统一接口效劳,方便系统各模块的日志功能的开发和维护。 缓存效劳管理模块: 页面访问的时候,生成动态 Web 页会耗用各种各样的系统资源。当 Web 效劳器收到页面请求时,它通常必须从数据库或其他存储系统中实时的检索所请求的信息。对这些资源的访问通常需要通过有限的资源池如数
39、据库连接、套接字或文件描述符进展。因为 Web 效劳器通常需要处理很多并发请求,所以对这些共享资源的争夺可能会延迟页面请求,直到资源变为可用。在将请求发送后,仍然必须将结果转换为 HTML 代码以便进展显示。 使系统速度更快的一种显而易见的方法是购置更多、配置更好的硬件。此方法可能很吸引人,因为硬件廉价,而且不必更改程序,但更多的硬件只能在未到达其物理限制之前才会对性能有所帮助。系统中实施缓存管理,是一个有效的解决方案。 系统中存在两中缓存对象: 1、 Java对象缓存:对于一些经常被使用的Java对象保存于规定的存空间,通过配置的更新规则,同步更新数据库容。 2、 前台页面缓存:对于前台的h
40、tml页面按不同的块来区分,然后通过一个key对象,通过开源JCS技术存储于存或磁盘空间。 请求中的页面对象不在缓存对象中 请求中的页面对象存在于缓存对象中 从上边两幅图可以很清晰的看到,对于并发访问的页面请求,通过页面的缓存可以极大的减少对紧缺资源数据库连接的调用,减少访问响应的时间,从而提高系统的访问速度和整体性能。2 上传文件的共享 我们采用共性文件形式的文件共享,主要使用磁盘阵列技术,简称RAID(Redundant Arrays of Ine*pensive Disks)。磁盘阵列是由一个硬盘控制器来控制多个硬盘的相互连接,使多个硬盘的读写同步,减少错误,增加效率和可靠度的技术。 磁
41、盘阵列有以下优点: 1传输速率快; 2储存容量可提升; 3提升I/O每秒的数量; 4增加数据平安性及稳定性; 5大量数据快速及简易管理; 6增加可用运时间,减少维护; 7通过磁盘阵列,可以将不同效劳器上传的文件统一管理。 如下图:各台效劳器共享磁盘阵列,这样所有的上传的文档都放到磁盘阵列之中。3. 高可用性 我们建议采用负载平衡器,负载均衡器可以根据实际的响应时间制定优先级交付决策,从而实现高性能、智能化流量管理,到达最正确的效劳器群性能。采用第七层应用控制还可以减少通信顶峰期的错误讯息,因为过失控制和流量管理技术可以侦测到一些错误信息,并透明地将会话重定向到另一个效劳器,使用户顺利地进展使用
42、。例如,效劳器A不可用或者数据库出现错误,错误信息将会返回到负载均衡器上,然后会将客户的访问指向效劳器B或者将消息重放到其他数据库中去,整个过程对用户是透明的。 将部的多个私有的效劳器,对外映射成一个一样的IP。而且当其中*台效劳器Down掉的时候,负载均衡器将不会将这个效劳器映射出去。 6. 数据库集群 如果数据库是用Oracle的话,数据库集群可以采用Oracle RAC。基于RAC的电子商务应用的用户或者中间层应用效劳器客户,可以通过虚拟数据库效劳名连接到数据库上。Oracle在集群中多个节点之间自动平衡用户负载。不同节点上的Real Application Clusters数据库实例预
43、订所有数据库效劳或者局部子集数据库效劳。这使得DBA高度灵活地选定,连接到特定数据库效劳的特定应用程序客户是否可以连接到*些或者全部的数据库节点。RAC在工作期间,每个节点可以单独的被使用并且被应用程序负载均衡。如果发生意外,如一个节点的失败,可以实现节点的失败切换,保证数据库24*7的高可用性。 虽然每一个节点有一个不同的物理IP地址时,应用客户仍可以在一个逻辑数据库效劳名的水平上进展连接。因此客户端对于不相关的事情如多效劳器的多个地址可以毫不关心。 任务调度模块: 对于电子大型的成熟的电子商务平台系统,每天都有很多特定的数据需要进展分析或处理比方:每天都有大量的需要发送。对于大数据量、高数据运算的处理功能,往往不希望在系统繁忙的时间进展处理。 针对这种状况,系统采用Spring定时器提供的根底效劳,通过Spring定时器接口的扩展,实现对系统自动执行的任务灵活的、人性化的配置。管理员可以根据系统的实际情况,配置相应的系统任务来执行。应用层应用层提供各种业务实体的操作,使用商
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中语文专题一辩论第1课原毁课件苏教版选修唐宋八大家散文蚜
- 校园安全教育班会教案
- 四年级公共安全教育教案
- 山东省滕州市2024-2025学年上学期期中复习卷八年级英语试题(无答案)
- 北京远洋LAVIE项目推广思路
- 2013-2016年中国戊唑醇行业市场调研及十二五规划分析研究报告
- 2010-2013年乙二醇行业发展及竞争力分析报告
- 2024至2030年中国天然红纹石手链行业投资前景及策略咨询研究报告
- 2024至2030年中国塑料餐勺数据监测研究报告
- 道路交通安全课件第-七-章-交通环境与交通安全
- 青海三新农电公司招聘试卷
- 稻田养蟹项目总结汇报
- 勇敢的人先享受世界
- 人教版八年级英语上册完形填空14道(含答案详解)
- 画法几何工程制图课件计算机绘图讲义
- 医疗安全不良事件分析报告
- 西师大版小学6年级(上)第一单元测试卷数学试题(一)含答案与解析
- 华为大学人才培养与发展实践
- 文化旅游安全培训文案标题
- 医院高风险意外事件应急措施和救护机制
- 一年工作业绩总结与成长
评论
0/150
提交评论