Advance
News Center
Sort
酒吧桌
时尚酒吧桌
酒吧椅
休闲椅 办公椅
技术方案
2011-03-12 Jump to Topic:

 

1   系统架构   

        系统功能架构框架如下图:


     
                                                                                                     图1、系统功能架构图
           Legend Shop的体系结构整体分为4大部分:Legend Shop前端、图片服务器、后台管理系统、权限管理和单点登录系统,其中Legend Shop前端是客户浏览和订购产品的网站平台,Legend Shop前端通过访问图片服务器来提供图片服务,Legend Shop的图片集中放在图片服务器上,增加了系统的扩展性和系统升级的便利性,后台管理系统是对Legend Shop前端展示的全面控制,包括产品的CURD等,权限管理系统是系统超级管理员使用,可以将某个客户新增店铺,管理客户的权限和角色。
     目前系统有以下角色:
1.    客户, 购物者,通过浏览平台上的产品并且订购
2.    用户,产品提供者,通过后台上传产品信息
3.    管理员,管理平台的用户和客户
4.    超级管理员,管理平台的所有客户/用户/管理员的相关资料和权限。

2   系统特征

2.1    安全性,可靠性,稳定性

        Legend Shop采用了123done.Team长期项目实践中积累下来的一个轻量级开发平台JCF(Java Commond Framework,见另外一个PPT《JCF1.2-基于构件的开发》,包括一套完善的代码生成工具)和一套完整的基于单点登录的权限管理系统,JCF兼顾复杂的EJB开发和灵活的轻量级POJO开发,JCF有完善的异常处理机制,适合做复杂的流程设计,对简单的逻辑更是游刃有余。Legend Shop所有业务逻辑都搭建在其上,使平台质量非常有保证。
     Legend Shop 是典型的SSH(Struts/Spring/Hibernate)框架,对Spring和Hibernate的使用已经形成了一套规范,并形成了自己的代码生成规范。Struts是用Struts1.3版本,由于在使用过程中发现Struts并不是很简洁,因此Legend. Team在对比了Spring MVC和Struts 2.0的各自优劣势, 将Struts1.3升级为采用Annotation的Spring 3.0 MVC,因此SSH框架化简为SH框架,Spring MVC无缝的融合到Spring中,使得系统更加简练和高效。

2.2    集中式图片管理和自动图片缩略图

       在网购平台中,图片是最重要的资源,因此需要特定保护起来。随着用户的增多和用户不断上传产品和广告图片,系统的图片会越来越多。一般的网上商城会将图片放在网站内部跟代码混在一起,这样系统每次升级的时候就需要对这些图片特殊处理一下。采用集中式的图片管理,带来了管理上的方便,也更容易为图片加入权限管理功能。
       系统另外集成并扩展了Fckeditor,将Fckeditor的图片集中到图片服务器上统一管理,另外也可以通过Fckeditor进行增加和删除图片,不会在系统中留下多余的无用图片。
        由于每个产品图片的大小都在几百K或者上M的,为了提高性能,Legend Shop对产品图片进行缩小展示,直到点击产品详细页面的图片连接才会展示最终的完整的图片。

2.3    单点登录和权限管理

        一般简单的网购系统只有一个应用,所有的功能都集中在一个应用里面。但Legend Shop为了系统的灵活性和扩展性,将前台,后台和权限管理系统分成不同的模块,不同的角色工作在不同的模块上,极大的增加了系统的性能和灵活性,减少模块间的耦合性,不同的模块均采用Acegi SSO单点登录,只要登录其中一个应用就等于同时登录了其他应用,用户并不会感觉到网站的部署情况。
Legend Shop的权限管理系统是采用123done.Team积累的一套完整的权限管理系统,该系统配合Acegi可以单独应用于其他的系统,是一套通用的权限管理系统。系统按用户/角色/权限来设计系统,该系统可以灵活的定制任何一个用户/角色/权限。

2.4    二级缓存机制,提高系统性能

         一个系统的性能瓶颈一般在数据库上,如何提高系统的性能?就要减少跟数据库交互的次数。当系统有大量访问时,会对数据库产生大量的查询请求。由于对系统实时性要求比较高, Legend Shop采用Hibernate的二级缓存来减少对数据库的操作,采用Hibernate的默认实现Ehcache,可以配置每个实体缓存的个数和时间,这些值由所部署的机器的性能决定。在第一次访问的时候发现缓存中没有数据就会向数据库发起请求,拿到数据之后放在缓存中,在没有超时前都会直接从该缓存中返回数据,在并发量大的时候可以有效减少数据库系统的压力。根据不同业务实体的特性,一般设置不同的超时时间,一般是3-5分钟,在后台进行操作之后需要等缓存时间过后才会生效。这样既保证了系统的实时性,也提高了系统的并发能力。

2.5    灵活的事务配置

         采用Spring的声明式事务机制,每个操作都会加入使用当中,保证数据的完整性。

2.6    良好的Ajax体验

        Legend Shop采用jquery和juqery.tool 和jquery.superbox来做出动感的页面效果,同时在IE和Firefox等主流浏览器上完美展现。

3   应用特征

3.1    多用户支持

        一般的网上商城只是支持单个卖家发布产品,只是少数大型的B2C/C2C的大型网站例如淘宝/易趣等等才会支持多个卖家同时发布产品,但淘宝上已经有几十上百万的卖家在上面做生意,如果在这些卖家中突围而出?如何跟其他商家进行差异化服务?是摆在淘宝等商家面前的一个难题。Legend Shop也是支持多个卖家同时发布产品的网购平台,也可以理解为一个小型的“淘宝”的雏形,适用于那些想要打自己品牌的商家或者连锁店,或者用来跟淘宝等进行配合销售。

3.2    良好的系统扩展性

       Legend Shop支持多种多种产品销售,每种产品都有固有属性和动态属性二种。而Legend Shop采用JCF的代码生成工具进行后台的业务开发,对新需求的反应速度非常的快。

3.3    多国语言支持

       整个系统基于UTF8编码,采用Struts的国际化方法,目前Legend Shop前端已经实现对中文和英文的支持。如果有扩展需要,只要增加对应的语言包即可实现该语言的支持。适合外贸等将生意做到国外去的行业。

3.4    多种风格支持

      由于Legend Shop的用户是面向不同的行业,因此对风格上会提出不同的要求。系统采用css和js来控制这个Legend Shop前端的页面展示,目前已经支持红,青,蓝三种风格,用户可以在店铺管理中定制某种风格或者轮流使用所有的风格,以给客户带来新鲜感。

3.5    优秀的SEO能力

      一般来讲,静态的资源更容易被baidu和google这些搜索引擎收录。搜索引擎无疑是当今最低成本而又非常有效的网站推广方式。Legend Shop使用URLRewrite将动态连接静态化,使到我们的用户网站一经上线,就迅速被各 大搜索引擎收录,并直接带来大量访问,大大提高了下单量。

3.6    新闻广告和超连接的支持

         一般的网站都需要打广告和其他商家组成商家联盟。Legend Shop已经内置新闻管理和对联式广告的支持,系统已经留下增加其他实行的广告支持的接口,同时Legend Shop也支持后台的超连接配置。

Order step=> 1、Login => 2、choose product => 3、check out => Done=> shopping Done
IP地址查询
©Copyright 2009 - 2011 Power By LegendShop 3.0.3.2 多用户终身正式版 All Rights Reserved.