大规模网站架构实战之体系结构(一)

  其实大规模网站并没有什么神奇之处,主要看你的思维和视野(在考虑成本的情况下),主要体现个人认为在于拆和分,就是把一个复杂的问题尽可能的拆分成几个部分,现在MS和开源已经为我们做了很多工作,我们大多时候仅是在关注如何整合现有的资源,下面是我为XXX企业所做的体系结构设计。由于时间关系写的比较乱,具体参考图来理解。

XXX企业项目分析:

一、特征分析


1、用户特征:

游客(互联网)  1000万以上

企业用户 (需要登录认证)   10万左右

个人用户(需要登录认证)    1000万左右

2、数据特征:

门户网站新闻数据 (数据量不大)

业务数据 (单项业务指标最大值在5400万/月)

数据来源于内部网络与互联网物理隔离

由于历史原因数据由不同系统生成,格式多样化

3、网络特征:

内部网络与外部网络通过网闸进行单工通信(只能从内到外)

4、安全特征:

数据涉密敏感

5、使用特征:

部分数据实时性要求较高

二、解决方案

1、安全性(IDS、DDOS防互、病毒扫描软件、防火墙、漏洞扫描器、系统及应用软件补丁等)

2、可靠性(硬件NLB、磁盘阵列、UPS、IPCP)

3、性能

多台高性能服务器,采用SQUID作为WEB加速器、MEMORYCACHE做为数据缓存容器、独立文件服务器存储图片、附件等
采用GZIP压缩、CSS Sprits、图片压缩、局部页面静态化、DIV+CSS标准加快Brower渲染速度

4、应用支撑

当前采用.net 3.5 +Windows 2003 +Oracle 10G +IIS6.0

后续将升级.net 3.5 +Windows 2008 +Oracle 10G +IIS7.0(借助IIS7.0的一些新特性)

5、开发支撑

采用ASP.NET MVC 做为前端表现层、WCF做为通信解决方案、enitity framework+ELB作为数据持久层、quartz做为调度轮询、log4net做为日志处理、
castle IOC做为容器、postSharp做AOP、jquery做脚本框架、Log Parse和awstat做日志分析、自定义异常处理组件整合log4net、MS ESB 做数据交换软总线
 
三、架构图


 

posted @ 2010-02-24 12:10  design-life  阅读(10366)  评论(40编辑  收藏  举报