摘要: 现在大型的电子商务系统,在数据库层面大都采用读写分离技术,就是一个Master数据库,多个Slave数据库。Master库负责数据更新和实时数据查询,Slave库当然负责非实时数据查询。因为在实际的应用中,数据库都是读多写少(读取数据的频率高,更新数据的频率相对较少),而读取数据通常耗时比较长,占用数据库服务器的CPU较多,从而影响用户体验。我们通常的做法就是把查询从主库中抽取出来,采用多个从库,使用负载均衡,减轻每个从库的查询压力。 采用读写分离技术的目标:有效减轻Master库的压力,又可以把用户查询数据的请求分发到不同的Slave库,从而保证系统的健壮性。我们看下采用读写分离的背景... 阅读全文
posted @ 2014-03-05 09:56 喜洋羊 阅读(2811) 评论(3) 推荐(0) 编辑
摘要: 在.Net中有两种常用的Web开发方式,一种是Asp.Net WebForm,另一种是Asp.Net MVC。我先简单的给大家介绍下这两种开发方式的特点,然后再应用自定义脚本映射,反射,json2template.js,htm等技术演示一个纯静态的Web框架。 Asp.Net WebForm 在Asp.Net WebForm中,请求大都以.aspx为后缀,那么.Net是如何处理.aspx请求呢? 打开.Net的配置文件, .Net4.0配置文件地址(64位):C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.conf... 阅读全文
posted @ 2013-10-22 17:42 喜洋羊 阅读(3210) 评论(4) 推荐(5) 编辑
摘要: 在大型项目开发中,我们需要配置各种各样的信息。比如:在线支付方式有支付宝,网银,财付通,快钱。我们需要配置支付宝账号信息,需要配置财付通账号信息,需要配置网银账号信息还有快钱账号信息。发邮件呢?我们需要配置邮件服务器信息。发短信呢?我们需要配置短息服务器信息。对于各种各样形形色色的配置信息,我们该如何配置呢?又该如何才能方便管理呢?我们当然希望有一个通用的配置管理模块来管理我们的配置信息,方便我们定位配置信息,方便修改,而且修改配置信息不会引起站点的重启等等。 好了,我先介绍下.Net自带的配置管理,然后在使用反射技术定义一个通用配置模块。 1)使用System.Configuratio... 阅读全文
posted @ 2013-06-05 10:13 喜洋羊 阅读(641) 评论(1) 推荐(1) 编辑
摘要: 订单是整个电子商务的核心。整个电子商务的流程也是围绕订单的状态执行的。这篇博客主要向大家介绍订单号的生成方式。 现在大型电商网站大多都有好几种下单途径。比如:通过Web网站下单,通过打电话到呼叫中心下单(CallCenter),使用手机Wap下单。如果只采用单数据库来存储订单信息的话,其随着订单量的增加,单数据库写压力必然增大,数据库服务器就会不堪重负,所以大都会根据业务采用分库做法。如下: Web网站来源订单调用生成订单API后,存储在Web订单库。CallCenter网站调用生成订单API后,存储在CallCente订单库。Wap来源订单调用订单生成API后,存储在Wap订单库。最后... 阅读全文
posted @ 2013-05-23 09:07 喜洋羊 阅读(4840) 评论(8) 推荐(4) 编辑
摘要: 在博客园里看了大家写的很多精彩的文章。忍不住,自己也想写写,但水平确实有限。一直不知道如何下笔,写的不好,欢迎大家拍砖。自己做电商也有3年多了,是不是可以写写电商基本的购物车实现呢。目前我们使用购物车的存储方式主要有:Session方式,Cookie方式,数据库存储,我们来一一分析优缺点。1.Session(Memcached)方式 优点:购物车信息保存在服务端,可以保存1M 信息。 缺点:对于大型网站会占有过多的服务器内存资源,造成服务器压力过大。Session保存的信息会在用户退出登录后丢失。用户下次登录,购物车中商品信息丢失,用户只能从新选择。2.Cookie方式 优点:购物车信息存储在 阅读全文
posted @ 2013-05-22 09:01 喜洋羊 阅读(1306) 评论(4) 推荐(2) 编辑