.Net下企业应用系统架构构建心得

来源:软件水平考试    发布时间:2012-11-04    软件水平考试视频    评论


  i.Domain Model & Table Module
  根据Martin Flower的定义Domain Model:An object model of the domain that incorporates both behavior and data.
  - Rich Domain Model :是上面的这种定义
  - Anemic Domain Model :这种方式方法和Data是分别在不同的类里实现的,OR-Mapping就是建立在这种方式上的。
  ii.NHibernate
  NHibernate是OR-Mapping的一种实现,是一个比较齐整的框架,是从Java的Hibernate转过来的。当然.Net下还有其它的OR-Mapping实现,如Gentle.net
  iii.SqlMapper & IBatis.Net
  SqlMapper为Domain Model和Table Module两种方式一个折中方案,它可以以面向对象的方式直接处理自定义数据实体对象,同时可以根据与数据源与业务实体的映射关系执行手写的Sql语句,这样完全使得我们可以针对具体数据源做优化,对于复杂操作同样可以胜任。IBatis.Net 是SqlMapper的实现。
  3)or-Mapping与复杂查询的问题
  OR-Mapping带来的好处是在CU,D方面还可以,毕竟大批量的删除一般不会经常出现,但是R方面就是一个实实在在的问题,面对复杂查询的执行效率也是一个问题。蹩脚的解决方案是两条线,R这方面采用Table Module这种方式来,而CUD才用对象。
  5. Commom Tier
  是系统性能、检测、跟踪用的,有些可以采用AOP来解决,如计数等。
  三.企业级应用
  企业级应用一般的特点是数据量大,交互操作要求高,在线用户量比较大,用户地理分布较广。这就要求我们在设计架构是要考虑其安全性,数据存储要求,集群,与其它应用交互。
  l)安全性
  安全性是一个多角度多方位的立体式问题,应用体统的安全性,是与其它安全性一起才构建起来。 一般安全分成几个层级:
  1.网络安全性
  -网络服务的安全,如http,ftp,mail
  2.操作系统安全性
  -访问控制表(ACL)安全控制,主要通过组、用户权限控制完成
  -网络访问安全控制,在域模式下
  3.数据安全性
  - 数据库系统安全
  -数据访问权限安全
  - 数据加密
  -数据备份
  4.应用系统安全性
  -Asp.net的安全性
  -安全通信
  对于上面列举的一些安全层次,有些是在系统的使用过程中要注意的问题,并非在架构设计时能做到的,但是,可以做为输入项来构建一套安全的系统。下面主要来讲一下如何用Asp.net来构建安全的系统。
  1.Asp.net安全性
  -ASP.NET 身份验证,包括 Windows、表单、Passport 和无身份验证
  -ASP.NET 授权,包括URL 授权、文件授权 、主体权限需求 和.NET 角色
  -标识和主体,主要是通过编程方式来进行(标识和主体对象必须实现 IIdentity 和 IPrincipal 接口。这些接口在 System.Security.Principal 名称空间内定义 )
  2.在采用windows验证时,Asp.net可以在IIS上配置一些安全选项。
  3.安全通信
  -Internet协议安全(IPsec)
  IPSec 提供传输级安全通信解决方案,可以用于保护两台计算机之间传送的数据安全 。VPN也是在这个协议基础上构建的。
  -安全套接字(SSL)
  这通常用于保护浏览器和 Web 服务器之间的通道安全。 结合IIS和证书,就可以配置https协议使用。
  -远程调用(RPC)加密
  分布式 COM (DCOM) 使用的 RPC 协议提供了一个身份验证级别(数据包保密性),它对客户端和服务器之间传送的每个数据包都进行加密。
  2)存储
  企业级应用级的存储特点是I/O访问要求高,数据容错性要求高。所以,就有可能使用比较高端的存储设备以满足存储要求,硬件不是软件系统架构的内容,但是Raid等使用却是软件架构必需考虑的。
  3)集群
  同存储要求一样,对于一个大型的应用来说,大访问量,分布式数据应用,就可能需要使用集群。
  对于分布式数据库的需要使用数据库集群,可采用数据库系统本身得到解决。
  对于分布式部署需要应用服务器集群,这在代码实现上就要先期考虑到Session在分布式部署环境下的同步问题。
  4)与其它应用交互
  在设计架构时,还要考虑与其它系统的交互。
  1.使用其它系统的接口
  2.与原有系统的整合
  3.开放接口,供其它系统使用

上一页123下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答