简述.NET企业级系统架构设计

.NET设计层面上的体系架构,如1.1图是从设计层面上划分的.NET体系架构。

图 1.1

软件设计的原则是为了提高软件系统的可复用性和可扩展性,我们采用的手段是为应用系统划分层次,这是一种逻辑上的划分不是物理上的划分,也就是这些层可以是在一台电脑上也当然可以分布到在多台电脑上。这些层之间是松耦合的,层的内部是高内聚的。因此,降低耦合是软件设计的目标,能够设计出低耦合的系统,就意味着我们的系统具有可复用性和可扩展性了。

1.1.1 表示层

表示层(Presentation Layer)是用户与系统交互的组件集合,用户通过这一层向系统提交请求或发出指令,系统通过这一层接收用户请求或指令,然后,将指令消化吸收后调用下一层,再将调用的结果展现到这一层。表示层应该是轻薄的不应该具有业务逻辑,如果在表示层中采用Windows Form技术就是我们熟悉的桌面系统。如果在表示层中采用ASP.NET和HTML等技术,这就是我们说的Web系统,这时候我们将表示层也称为Web层。但是不论采用什么技术表示层都应该是轻薄的。

1.1.2 业务逻辑层

业务逻辑层(Business Logic Layer)是系统的核心业务处理层的组件集合,负责接收表示层的指令和数据,消化吸收后,进行组织业务逻辑的处理,并将结果返回给表示层。为了降低表示层和业务逻辑层的耦合问题,我们会在两层之间引入接口,然后在运行期注入依赖关系。

1.1.3 数据访问层

数据访问层(Data Access Layer)是业务逻辑层用于访问数据层的组件集合,从设计规范上讲为了降低耦合度,业务逻辑层不应该具有访问数据库的代码,访问数据层的代码应该放到数据访问层中,在数据访问层中一般是通过DAO(数据访问对象)访问数据层的,也是为了降低耦合度,DAO被设计为接口,DAO实现部分中可以通过ADO.NET技术,也可以使用一些框架如NHibernate等。

1.1.4 EIS层

EIS层是企业信息系统层,是系统的数据来源,可以是数据库、文件(例如CSV、XML文件等)和遗留系统(数据来源别的系统),但多数情况下是指的是数据库。

时间: 2024-10-29 07:39:21

简述.NET企业级系统架构设计的相关文章

大型网站技术架构之秒杀系统架构设计

秒杀活动的技术挑战 1. 对现有网站业务造成冲击 秒杀活动只是网站营销的一个附加活动,这个活动具有时间短,并发访问量大的特点,如果和网站原有应用部署在一起,必须会对现有业务造成冲击,稍有不慎可能导致整个网站瘫痪. 2. 高并发下的应用.数据库负载 用户在秒杀开始前,通过不停刷新浏览器页面以保证不会错过秒杀,这些请求如果按照一般的网站应用架构,访问应用服务器.连接数据库,会对应用服务器和数据库服务器造成极大的负载压力. 3. 突然增加的网络及服务器带宽 假设商品页面大小200K(主要是商品图片大小

spring-j2ee系统架构设计 请求帮忙

问题描述 j2ee系统架构设计 请求帮忙 现在系统有这样的需求, 所有的controller调用一个service入口(controller 与service分开的两个工程), 在这个入口的service根据不同的参数分发到不同的service处理, 就想请问各位大神有不有好的解决方案(目前就考虑到用反射) 解决方案 再进一步,你可以用标注将参数标在你的service实现类上,反射的时候遍历所有实现了这个接口的类,然后找参数和标注符合的. 好处就是你添加新的参数,直接写好实现类丢进去就可以了.不

《解剖PetShop》之一:PetShop的系统架构设计_自学过程

前言:PetShop是一个范例,微软用它来展示.Net企业系统开发的能力.业界有许多.Net与J2EE之争,许多数据是从微软的PetShop和Sun的PetStore而来.这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注.然而PetShop随着版本的不断更新,至现在基于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,却又很多可以借鉴之处.PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸现了许多颇有价值的设计与开发理念.本系列试图对

风控系统架构设计

风控系统架构设计.

SOA实践应从企业级IT架构设计着手

各大软件供应商与媒体的联合吵作,使SOA(Service Oriented Architecture)成为http://www.aliyun.com/zixun/aggregation/12601.html">IT人士经常挂在嘴边的"时尚"词汇.2006年,在日本举行的年会上,Gartner公司乐观预测,到2007年,会有超过50%的企业采用SOA体系, 到2010年该比例将会达到80%. 但事实上,到目前为止,国内的IT界也是很少有人清楚SOA的实践应从那里着手.国际

SaaS 系统架构设计经验总结

2B SaaS系统最近几年都很火.很多创业公司都在尝试创建企业级别的应用 cRM, HR,销售, Desk SaaS系统.很多SaaS创业公司也拿了大额风投.毕竟SaaS相对传统软件的优势非常明显. 最近一年,有幸架构一个Crm SaaS 系统,上线了几个月来,各方面都比满意.整个系统创建过程,踩了很多坑,收获也比较多.总结一下SaaS系统架构一些特点: 1.分层设计 SaaS系统分层大概是: 租户识别>应用层>数据访问层>缓存层>数据库 业务代码都是写在应用层. 租户识别可以用s

《解剖PetShop》系列之一:PetShop的系统架构设计

在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构.微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层.业务逻辑层(又或成为领域层).表示层,如图所示: 图一:三层的分层式结构 数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问.简单的说法就是实现对数据表的Select,Insert,Update,Delete的操作.如果要加入ORM的元素,那么就会包括对象和数据表之间的mapping,以及对象实体的持久化.在PetShop的数据访问层中,并没有使用ORM,从而

《Microsoft.NET企业级应用架构设计(第2版)》——2.3 走出混乱

2.3 走出混乱 即使做了最好准备,也不管团队的努力如何,系统的设计都可能在某个时刻陷入困境.BBM的形成通常是一个缓慢的过程,会在一段相对较长的时间里使设计恶化.在这个过程里,你的类到处都有修补和变通方案,最终大片代码开始变得难以维护和进化. 这个时候问题就很严重了. 管理者面临与魔鬼交易的抉择,要么采用更多修补和变通方案,要么根据审核的需求和新的架构选择做一次彻底的重新设计. 重新设计一个完整系统与完全从头开始开发之间的区别是什么?就采取的措施而言,区别是极小的,如果存在任何区别的话.但心理

谈谈对于企业级系统架构的理解

转自:http://www.cnblogs.com/liping13599168/archive/2011/05/11/2043127.html 在我们刚开始学习架构的时候,首先会想到分层的概念,分层架构比较经典的是三层架构,那么,什么是三层架构呢?它包括表现层,业务层,数据访问层:而对于一个新手来说,从抽象意义上的三层架构,逻辑上就划分为三个层. 这个是最基本的三层架构模式. 表现层充当系统的界面呈现以及UI逻辑的角色,也就是说,UI(用户界面)属于表现层: 举一个对于asp.net WebF