电子商务网站一般架构有哪些
发布网友
发布时间:2022-03-24 22:37
我来回答
共6个回答
懂视网
时间:2022-03-25 02:59
电子商务网站的结构分为两大系统,一是客户(前台)系统,二是后台管理系统。客户系统尽可能地为浏览者提供一切服务,后台管理系统为所有者提供一个安全、友好的管理环境。
电子商务,英文是Electronic Commerce,简称EC。电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。“中国网络营销网” Tinlu相关文章指出,电子商务涵盖的范围很广,一般可分为企业对企业(Business-to-Business),或企业对消费者(Business-to-Customer)两种。
热心网友
时间:2022-03-25 00:07
大型电子商务网站架构,摘抄 7.同一个网站的多语言该如何处理是好,使用配置文件然后cookie或url来判别?===客户是自己公司,使用标准方法即可
8.电子商务网站最多的就是 商品的打折方式和积分的赠送了,这里要怎么设计才好(工厂模式)?===采购成熟的规则引擎
9.如果同一时间并发大量订单的话,如果确保一个订单的有效提交呢?
==电子商务一般要使用MQ,推荐IBM MQ;使用MSMQ也可
第一点是数据库要设计好,要达到什么级别,你可能需要考虑哪些表需要拆分,哪些表的核心数据需要冗余,如果是mysql,还要考虑其他的问题,比如存储引擎。
新闻肯定是要生成纯静态页,对数据库压力就小很多,不过静态页也有管理上的不方便,更新删除添加都要对磁盘文件进行操作
做一个自定义缓存层,对缓存逻辑进行控制,可以采用第三方缓存模块,如果使用.net来做,可以层层缓存,页面缓存,数据缓存(memcache,不过在win下效率不高)
电子商务网站特点就是对事务的严格,需要数据库设计的时候要求高性能,也需要合适的索引,支持高并发,经常对产品表用户表等进行索引检查,是否有很多索引扫描和表扫描(即使是局部的,也要将“局部”控制到最小范围)
mssql语句对不需要事务的查询要附带上with(nolock),以利于并发更新。
有些功能模块不能按照想当然的方式开发,比如产品访问次数,切不可将这些更新非常频繁的字段置于核心表内,明确的做法是将其剥离开来 还有就是切不可经常性将字段设计成bool类型,这样会给以后的扩展留出路,即使是男女这种字段,也建议采用tiny类型
其他还有就是在产品设计的时候充分考虑seo,网站目录结构清晰可读,而不是带着一串串的查询参数。
对安全要有整体的把握,最好全都是用存储过程,在项目上线前将数据库存储过程全部导出再查找貌似exec的语句,查找是否需要替换成sp_executesql。
另外,如果采用mssql,全文搜索直接用mssql fte就可以,速度和精确度都还是可以的,最重要的是维护和管理开发很简单。
打折的处理可以按照电信的一次,二次批价功能,如果你做过电信方面的系统。
当然也可以设计得更简单的一些。 静态的页面建议使用CDN加速,以解决网通和电信之间访问速度的问题;
数据的缓存方面建议考虑用memcache,另外也可以分别在表现层和数据层利用.net中的现存缓存机制作业可;
简单执行的sql可以不用存储过程,存储过程会占用数据库服务器的处理时间,造成死锁;
mvc建议还是做些CMS的项目上应用,电子商城不是很适合,个人观点。url上可以做转义,使url显示更友好;
数据库建议建立分布数据库,这样可以转移查询和大访问量对数据库带来压力;
图片可以考虑单独放在一台服务器上;1.三层架构
2.使用手写sql,手写entity(生成也可),缓存反射绑定(不是缓存数据哦,缓存映射关系),要考虑网站的长期发展还是手写吧 灵活 性能也好
3.没有这种问题,商业驱动的,纯购物就好了,千万别搞什么圈子,wiki
4.纯.net的mvc不建议,webform不搞viewstate,不搞服务端控件(除repeater)再加点mvc的思想已足够用了
5.不需要缓存数据(除搜索产品部分),要考虑多台服务器的程序快速部署,config文件会很多,config要序列化缓存
6.当然是先生成好了,参照jd吧,按业务每张图片对应几个不同大小的图
7.据经验,电子商务网站仅靠中英双语来达到多语言是不靠谱的(文化 用户习惯不是简单的语言切换),如果想真正运营英语的就要重新开发一个版本
8.不搞模式
9.负载均衡(web,db)+ssb异步处理数据
10.你是业务类型的日志还是异常日志? 前台订单流程上异常日志不需要了,找个工具录个脚本不停的跑 保证随时发现问题发邮件就可以了
11.找第三方搜索组件 类似endeca的
12.负载均衡挺简单的,初期靠软件就可以,一切图片找第三方放cdn,前台网站用到ajax的地方很少,如果用的话jquery 1,一个电子商务网站用户99.5%的行为时Find
2、对于商品检索部分,能不用数据库就不用数据库(网上切词等相关的开源平台很多)
3、分布式缓存(Memcached 、Volecity),个人测试volecity 3还是不错的
4、系统设计时必须要考虑可运营。从这个角度去设计系统
5、对于电子商务网站改动很频繁,必须考虑架构设计如何适应频繁的版本更新
6、必须设计一个好的单点登录系统。
7、建议能不用sqlserver就不用它。
8、对于大型电子商务网站来说,系统的I/O是起决定因素而不是CPU和内存。1.项目划分是否会有问题,图中分别是 实体层,数据访问接口层,数据访问层,业务逻辑接口层,业务逻辑,网站A,B,C
项目划分其实不重要,重要的的是你在写代码的时候是否能把代码合理的分到对应的项目里。
2.数据访问层是要开发效率(NBear,Linq,Nh等),还是访问效率(直接使用sql等)?是否可以先使用开发效率高的,等日后访问量大了,再重写并替换数据访问层?
开发效率优先,访问量大了以后,我相信是有钱投到硬件上的,在你程序写的不是很烂的情况下,升级硬件远比优化程序节省成本。
3.网站被切割成了多个子网站,有一些控件(如header,footer)是要共享的,如何跨网站项目共享这些控件呢?
那就做成自定义控件啦。
4.ms的mvc 1.0也出来不少时间了,是否已经够成熟运用到项目中?或者是网站后台使用webform的,前台使用mvc?
推荐使用使用webform的,前台使用mvc,对于前台来说使用mvc能更好的提升性能,更方便的更换页面表现形式。后台界面相对稳定,用webform可以提高开发效率。
5.网站数据的缓存是自己开发一个hashtable什么的来维护呢,还是使用Memcached ?
初期建议用hashtable,因为简单,将来升级到Memcached 。
6.缩略图的处理,我看有的网站是在上传图片的时候直接生成,有的是在httpmodle里处理,访问的时候生成.
直接生成缩略图的好处是节约性能。httpmodle相反,每次浏览图片的时候都会生成新的图片,服务器压力大,建议直接生成。
7.同一个网站的多语言该如何处理是好,使用配置文件然后cookie或url来判别?
多语言建议使用asp.net自带的资源文件的方式实现,当前语言保存在cookie里面。
8.电子商务网站最多的就是 商品的打折方式和积分的赠送了,这里要怎么设计才好(工厂模式)?
规则引擎
9.如果同一时间并发大量订单的话,如果确保一个订单的有效提交呢?
使用MQ队列
10.日志方面,log4net?
log4net只能记录程序运行日志,主要目的是用来调试程序的,系统业务操作日志还你是得自己建一个表来保存。
11.电子商务的全文检索,这也是个头疼的问题
lucene,微软索引服务,sqlserver全文检索,方案很多的。
12.负载均衡方面,有什么好的文章推荐码?
可以看windows 2003 集群方面的文章 1.项目划分是否会有问题,图中分别是 实体层,数据访问接口层,数据访问层,业务逻辑接口层,业务逻辑,网站A,B,C
目前我也是这样分的,不过当数据表结构有修改时,会带动其它层的联级修改,非常不方便,所以开发之前最好将数据库设计地完善一点。另外,当网站分成多个以后,其它项目生成的DLL文件要部署到每个网站的bin文件夹里,更新一次都要重新部署,这也是个挺烦人的事,当然可以将DLL部署到GAC里来解决这个问题,不过这样的话本地调试起来就不太方便了,因为项目一有改动,就要将生成的DLL重新拷贝到GAC里才能看到效果。
2.数据访问层是要开发效率(NBear,Linq,Nh等),还是访问效率(直接使用sql等)?是否可以先使用开发效率高的,等日后访问量大了,再重写并替换数据访问层?
这个我也在考虑。目前我还没有采用ORM框架,都是在DAL里直接访问DB的。
3.网站被切割成了多个子网站,有一些控件(如header,footer)是要共享的,如何跨网站项目共享这些控件呢?
自定义控件。
4.ms的mvc 1.0也出来不少时间了,是否已经够成熟运用到项目中?或者是网站后台使用webform的,前台使用mvc?
正在学习这一块。
5.网站数据的缓存是自己开发一个hashtable什么的来维护呢,还是使用Memcached ?
现在我用的比较多的是.net自带的数据缓存。
6.缩略图的处理,我看有的网站是在上传图片的时候直接生成,有的是在httpmodle里处理,访问的时候生成.
直接生成好,快一点。
7.同一个网站的多语言该如何处理是好,使用配置文件然后cookie或url来判别?
我没涉及到这一块,不过我觉得资源文件应该就是用来处理这个问题的。
8.电子商务网站最多的就是 商品的打折方式和积分的赠送了,这里要怎么设计才好(工厂模式)?
这些都放在逻辑层好了。
9.如果同一时间并发大量订单的话,如果确保一个订单的有效提交呢?
MSMQ
10.日志方面,log4net?
目前我是自已写代码存在库里的。
11.电子商务的全文检索,这也是个头疼的问题
用lucene.net分词建索引,再直接从索引库里搜索,又快又准。
12.负载均衡方面,有什么好的文章推荐码?
不清楚了。 这样的设计要达到新蛋的效果肯定不可能的,新蛋少说几百台服务器,不同数据库之间的发布订阅链路都有几千条。有复杂的缓存,负载均衡机制。新蛋所有的通讯都是基于WCF的。另外对于这么大型的网站来说,数据库一刻都不停止,所以读写分离也很重要,因为你也不可能让数据库停下来进行备份。总归要做到新蛋这样的大型电子商务网站,靠你上面画的这点好像远远不够。
不过关于公共的header,footer,我不建议做成自定义控件,这个维护起来不方便,稍有变动就要发布dll,麻烦的。
如果你的header和footer不是很大的话,建议采用js+css的方式。然后加上压缩和cdn缓存,应该效率上能接受。
热心网友
时间:2022-03-25 01:25
1.电子商务的基本概念 电子商务是利用计算机及互联网开展的各种商务活动。其中电子是手段,商务是目的。是通过网站的商务运作和会员制收费,达到盈利的目的。 电子商务包括以下三部分内容:
电子:指信息基础设施及相关应用系统,其中信息基础设施包括internet 网络基础和信息技术,应用系统应包括支持电子商务活动的网站。
商务:指业务内容、流程及规则,这是电子商务网站系统设计的基础和依据。
信息:指业务活动中的数据,应完整、全面、实时、动态。业务活动所使用的数据也是网站系统数据库设计的依据。 Internet技术、信息技术系统和商务过程的有机集成形成了一个新的商务模型,即电子商务模型。 2.电子商务网站的基本架构设计 电子商务网站是以商务活动为中心进行的,而网站的盈利一般通过网站的会员制收费进行,网站的盈利点是网站根据网站的商务活动内容确定的,所以网站的基本架构设计既要以商务活动的业务内容、流程、相关规则为基础,又要兼顾电子商务网站的收费体系。 网站基本架构的设计主要根据以下步骤进行: 2.1 确定电子商务网站功能定位 确定网站所涉及的商务活动的内容、商务活动的流程。比如我们在进*产信息网的设计中,首先考虑确定网站发布房产信息的种类,确定了房源信息包括中介所的房源信息和个人的出售、出租信息,网站负责信息的发布和信息的管理。同时在确定了信息发布种类后,确定了信息处理的流程为房源信息输入、会员资格审核、信息审核,信息发布。 2.2 确定网站的收费对象和收费规则 在网站所涉及的商务内容确定了的情况下,确定收费的对象和如何进行收费,以此为依据确定网站的栏目。网站栏目的划分实际上就是系统的功能模块划分。在房产网站的系统设计中,确定了网站只对房产中介所进行收费,个人用户免费,所以网站的主要栏目分为个人专区和中介所专区两个主要栏目,同时根据功能的逐步扩大,这样也就基本确定了网站的信息服务内容和方式。 2.3 确定网站的栏目的功能 在确定了网站的收费项目后,要确定网站的主要栏目和功能,包括网站的管理功能模块、网站的信息发布方式、网站商务活动的发布以及网站导航栏等。 网站的功能栏目的设置和系统的主要功能模块的划分是相一致的。 网站业务介绍性栏目,应包括内容应包括会员申请流程,收费标准,网站运行规程等,使用户对网站的服务有一个明确的了解,是扩大网站的会员用户数量和提高网站的使用率都是必不可少的栏目。 网站的导航栏是网站的整体功能的全面介绍,使用户对网站的功能有一个清晰的了解,也是网站不可缺少的栏目。 同时也应有网站运行的相关提示信息,比如在房产网站的设计中,我们在确定了收费对象和主要功能后,确定了网站首页的主要栏目为中介所专区、个人专区、写字间专区、新房楼市等栏目,同时加入了上网导航栏目对网站的主要功能进行介绍。 2.4 确定网站的信息流和控制流 在确定了网站的主要功能和商务活动的主要规则后,应该确定网站的信息流图和控制流图,作为数据库设计的基础。 在房产网的设计中,我们根据房产信息发布的功能和所确定的信息审核和控制流程,确定房产网的基本数据流图为: 实例:一个网站的数据流图 在确定了一个网站的数据流图和控制流后 ,系统的运行控制流程也就确定下来了。 3.网站的后台管理 在网站的基本功能和数据流确定后,为了保证网站信息的准确性和有效性,应有完善的后台管理和维护系统,进行相关数据的审核,定期进行数据库的维护和备份,进行缴费会员资格的管理,有效的保证网站的商务运作。 我们在房产信息发布网站的后台管理系统的系统设计中,设计了一套完整的网站后台管理系统,主要功能包括房源信息管理如:房产信息审核、房产信息删除、房产信息删除确认;网站运行提示信息的管理,主要是对网站与商务运营有关的信息进行管理,使网站的用户对网站的运行情况进行管理;网站会员资格的审核,对逾期未缴费的用户取消会员资格;网站系统管理员权限管理,对不同的网站系统管理人员进行授权使用不同的后台维护功能。 4.网站的数据库设计 在确定了网站的主要商务的业务对象和业务流程后,可以确定了网站的数据流,也就可以进行数据库设计。 在进行数据库设计时,同样和一般的应用系统开发一样,应该注意信息的完整性和数据的独立性。 我们在房产网站的开发过程中,在数据库的设计阶段,对系统的数据库按房源的基本信息、中介所信息、个人信息分别进行库表的设计,同时对系统的维护信息、权限管理等控制信息设计独立的库表,主要的数据库表为房源信息表、中介所信息表、会员信息表等,这样可以方便网站的信息输入、数据库查询同时也方便网站后台的数据库管理和数据库维护。 数据库表数据的独立性和数据冗余直接影响数据的存取效率,影响网站的运行速度,所以在数据库设计时一定要避免数据的冗余性,同时要避免长数据库表的设计。总结: 在电子商务网站开发过程中,网站的商业运作模式决定了网站系统设计,一个功能清晰的网站的设计,一定要从网站的系统设计入手。
热心网友
时间:2022-03-25 02:59
个人觉得你可以参考一些现成的网站,看看他们大体的结构,青岛点点网 大商都不错
热心网友
时间:2022-03-25 04:51
您指的是哪种类型的 比如 淘宝 阿里巴巴 阿里妈妈吗 拍拍 有啊
热心网友
时间:2022-03-25 06:59
你这问题问的,就像问 微积分都有什么东西