我的网站之一(搭建网站架构)
前言
自己在博客园也游历了一年左右,对博客园中博友们发的博文每天也是多多少少也看了不少,自己也从中获益不少。因为自己现在是在做.net网站的,所以对网站也是多多宜善。也看到许多大神们自己的开源网站、开源架构,当然了其中有太多都没看懂,自己几斤几两自己也很清楚。有时候也经常写几个简单的小demo,但是做整个网站,还真是没有过。这几天自己也一直在想,要自己也做一个网站,肯定能从中获得更多的乐趣和知识。先不说自己做什么样的网站,自己这两天花了一点时间,在想自己网站的一个简单的架构吧。因为自己懂得毕竟还少,所以设计能力肯定还是很有限度的,当然要尽我所能了,同时更是希望广大的博友,大神们来给支支招,吐吐槽吧。好了,多了也不说了。
网站架构
开发环境 64位Win7
发布环境 IIS架设网站,WCF服务发布为Windows系统服务(随电脑一起启动,当然也可以设置手动开启)
开发工具 VS2010 +数据库SQL Server 2008 +代码管理器SVN
主要使用 Asp.Net MVC 3.0、WCF等来实现网站的功能。
直接上图
接下来就看着上图将网站架构,暂作说明:
MySoftWare.BaseModel ===>>>所有的实体类结构定义
MySoftWare.BaseCommon ===>>>公共的类库方法(字符串处理、各种数据转换等等)
MySoftWare.DataAccess ===>>>数据库访问层
MySoftWare.DataCommon ===>>>数据库业务层
MySoftWare.DataWCF ===>>>WCF服务接口和WCF服务实现层
MySoftWare.MyFrmWCF ===>>>WinFrom窗体承载WCF服务
MySoftWare.MyServices ===>>>Windows系统服务(将WCF发布为系统服务)
MySoftWare.SimpleMVC ===>>>MVC UI层
MySoftWare.SimpleMVCCommon===>>>数据处理逻辑层
MySoftWare.SimpleMVC.Tests===>>>单元测试项目
MySoftWre.ProjectExTension===>>>项目扩展(预留)
最上面的两个是公用项目,然后下面是依次引用的项目引用主线
MySoftWare.SimpleMVC需引用MySoftWare.BaseModel、MySoftWare.BaseCommon、MySoftWare.SimpleMVCCommon
MySoftWare.SimpleMVCCommon需添加服务引用 MySoftWare.DataWCF的服务。
MySoftWare.DataWCF需引用MySoftWare.DataCommon
MySoftWare.DataCommon需引用MySoftWare.BaseModel、MySoftWare.BaseCommon 、MySoftWare.DataAccess
MySoftWare.MyFrmWCF需引用MySoftWare.DataWCF。来运行承载服务,运行服务。
总结
初步的架构就是这样。我考虑的是可以将网站进行分布式的部署,网站程序和WCF服务程序。当然最简单的可以网站程序、WCF程序、以及数据库都可以在一台服务器上,那么这样就是失去了分布式架构的意义。可以在很多的服务器上分别部署很多的网站程序,分别部署很多的WCF程序,这样在很多程度上可以分担很多的压力(比都部署在一个服务器),性能有很多的提高。当然还要考虑成本、环境等等各方面的原因。
接下来我要想的是网站内容我到底要做什么,怎么做,怎么做好了。做个简单的计划,不能太盲目嘛。