b2c项目基础架构分析(一)

时间:2015-05-15 19:36:37   收藏:0   阅读:281

我最近一直在找适合将来用于公司大型bs,b2b b2c的基础架构。

实际情况是要建立一个bs架构b2b、b2c的网站,当然还包括wap站点、手机app站点。

一、现有公司技术人员现状:

1、熟悉asp.net页面级开发、页面级处理的后端人员。

基本特点:掌握小型单站、单页的相关开发技术。

技术熟练度为:asp.net原理基础、asp.net webform控件中等、jquery基础、js初步到基础、sql基础到中等。

面对大型站点可能存在的弊端:

2、熟悉jquery、css、html能切图的ui人员。

3、要应对大型项目的测试,我认为公司还没有起码的测试团队,也没有开发团队里的明显的模块测试、相互测试、以及明显的迭代机制。

4、数据库和运维人员。

二、整体软件架构思想:

由于公司的b2c、b2b业务构想还只是雏形,所以只能够大概设定一个软件架构的思路:

首先,业务逻辑上,要及时积极定义出历史数据,将其及时移动到数据仓库层级,这样能大大降低强事务sql数据库层级的压力以及提高该层级的性能表现;

然后进行业务拆分,将不同业务操作类型从入口层以后分配到不同的业务处理集群,这样可以降低其后每个集群的压力,提升性能表现;

凡是可以不必实时的操作,一定要区分出来,采取队列处理机制,可以预处理的行为积极进行预处理;

如果可以的话,将sql层面的表结构就考虑好,多插入少更新,积极地努力回避事务死锁问题;

Linux Web .net 架构:

架构小结:

上面就是我觉得在业务逻辑不那么清晰的情况下,我为将来的业务承载准备的大型bs的基础数据技术硬性构架的技术选择,主要的来说由http反向代理打头 后面跟上带负载均衡和业务分拆、服务分开的多路应用服务器集群,然后配上内存nosql集群应对最高速要求的热数据,后面跟上强事务sql数据库集群和也有高速查询反应的数据仓库级数据产品hbase,短期可以在其中混上文档型数据库比如MongoDB来应对短期内的多变需求,因为文档数据库是不必定义复杂的字段架构的,长期来说文档数据库的意义有待商榷,因为具资料mogodb的高并发连接情况下的速度始终不敢恭维。

应用程序层使用linux版本。net第三方运行时实现mono,并不算多冒险,国外世界前200位的IT网站有若干曾经多年使用mono+linux方案,缓存层redis几乎是唯一的选择,而选择Codis这样一个集群产品,是因为在开发的时候你可以大可不必挂上Codis,Codis是完全redis协议方式的,所以应用程序方面完全不会有任何感觉的;同样MyCat也是这样的一款产品,、它自己内部用它自己的方式协调后面的多台服务器的读写,你只需要把他当作基础的mysql协议的数据库那样去对待即可,至于hbase长期来说必然使用,短期你甚至可以无视它,等到你用到他了,并且按照我说的那样在历史数据的方面用它,你也自然不会觉得有什么难度,说到底hbase的配置部署和硬件质量和数量这些要求才是问题,使用的本身并没有什么难度。

 

未完待续......

原文:http://www.cnblogs.com/sfissw/p/4506605.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!