B/S结构的多层系统设计

原创 2005年05月19日 19:49:00

按我的想法,从物理视图来看,b/s结构分为客户端browse,web服务器,数据库三个层次。由于b/s系统的物理视图通常都是这样,所以分层一般指的是UI层、业务规则层、数据访问层、数据存储层,而现在像.net与j2ee这样的架构中对每一层都提供了大量的框架与类库,像.net中的asp.net,ado.net就分别了UI层与数据访问层提供了框架,而j2ee中,struts/spring等为UI层提供了框架,jdo/ejb为数据访问层提供了框架。

虽然在j2ee与.net都提供了相关的构架参考的示例,用j2ee与.net中的人都知道这个构架是怎么样的,但是这些构架的实际应用情况是什么呢,我有以下疑问:

1. 像asp这样,或是在asp.net或是jsp直接通过ado.net或是jdbc在UI层访问数据库的,也是感觉最混乱的一种方式,就是简单的二层结构,现在到底有多少人现在有这个结构,你们觉得有什么好处与问题,你的系统的规模大吗?

2.如果你使用UI层、业务规则层、数据访问层这样的多层构架,你在数据访问层使用专业的数据映射构架(如jdo,EntityBean,Hibernate)吗,你觉得带来的效果好吗?如果没有使用这些构架,你们公司有没有专门的API或是架构来解决这个问题?
3.你在UI层、业务规则层、数据访问层是使用什么来传数据的,dataset还是ResultSet,或是根据数据库结构自动生成的数据对象?
4.事务处理是数据库、业务规则层、或是直接在UI层来完成?
5.你觉得这样的参考构架有实际意义吗?你们公司有没有按这个参考构架来做项目?如果对参考构架进行了修改、裁减、完善、细划,请谈谈是怎么做的,带来了什么好处?
6.按一个架构来实现的系统能不能很好的支持分布式布置与负栽均衡?
7.你使用了数据缓存了吗?数据缓存一般放在哪一层?数据缓存一般缓存什么样的数据,更新策略是什么?它带来了性能上显著的提升吗?
8.关于像报表、工作流这样的中间件,你使用的是第三方提供的还是自己写的,你是如何把根据这样的中间件提供的构架来扩展你的系统,还是把中间件融合到你的系统中?
9.你的系统在开发过程中注重复用吗?像UI层控件、特殊的业务处理的API这样的比较容易实现复用,但是像组织机构、权限管理,审批工作流这样关系到多层的功能上的复用,你保留的只是设计思想,还是把代码设计得比较通用呢?
10.你的项目注重软件工程吗?都使用了什么开发过程,使用了什么case工具,项目管理、配置与变量管理工具,BUG追踪工具?这样的工具与过程带来了显著的效果吗,还是把你的团队带入了文档与工具使用的泥潭?
11.你的项目是按功能还是接层来进行模块划分?有没有针对模块进行专门的单元测试?如果进行单元测试,你们使用什么样的单元测试架构(如xUnit),如果单元测试时本模块要调用的模块还没有完成,你一般是怎么做?
12.你的项目在客户端使用了activeX控件了吗?一般用来实现什么功能?

在这里我并不是想讨论什么要的构架是最合理的。事实上,根据项目的规模、应用领域、商业环境、技术优势的不同,有各种不同的构架供大家选,而有关如何先这些构架的资料,在msdn,dotnet社区等地方都有很多文章供参考,而每一个版本的vs.net发布时都会带几个多层构架的应用例子。所以我在这里提出的这个问题,是希望大家能够根据你的项目的实际应用情况,把你在应用中得到的经验与遇到的问题与大家一起分享。

架构的选择没有定式,应该结合实现情况来进行选择。但是具体该怎么选择,事实上大家都在摸索,所以我希望大家能够把你的经验分享出来。

http://community.csdn.net/Expert/topic/3880/3880135.xml?temp=.3406793

http://community.csdn.net/Expert/topic/3909/3909315.xml?temp=.6522333

什么是C/S和B/S结构,各有什么优缺点 ?

C/S又称Client/Server或客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或 SQL Server。客户端...
  • QlLinanby
  • QlLinanby
  • 2007年09月09日 15:01
  • 563

c/s结构和b/s结构的区别或其优缺点

B/s结构所谓"B/S"是指Browser/Server(浏览器/服务器),即客户端是标准的浏览器(如Internet Explore,Netscape Navigator等),服务器端为标准的WEB...
  • Apollo_pl
  • Apollo_pl
  • 2006年06月07日 20:14
  • 3505

基于B-S结构的订餐管理系统的设计与实现

基于B-S结构的订餐管理系统的设计与实现                                       班    级: 2008计科二班         20084042034     ...
  • love_Ubuntu
  • love_Ubuntu
  • 2011年07月11日 17:49
  • 5897

B/S C/S结构区别及简介

B/S C/S结构区别及简介 B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过W...
  • vickiyan
  • vickiyan
  • 2005年05月29日 21:32
  • 9386

取经之路------浅谈C/S与B/S架构模型

C/S架构:即客户机和服务器结构。是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统。客户端需要安装专用的客户端软件。 B/S架构:即浏览器和服务器结...
  • findfun
  • findfun
  • 2015年09月27日 13:49
  • 964

C/S和B/S结构概念

C/S和B/S结构概念 1.什么是C/S结构 C/S (Client/Server)结构,即客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Cl...
  • sinat_35111396
  • sinat_35111396
  • 2016年05月30日 09:56
  • 9067

B/S结构简介

    B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分...
  • mxq007
  • mxq007
  • 2007年07月26日 20:50
  • 40926

B/S架构中,缓存处理的一点点感想。

最近下班之后有大量闲暇时间,想做一个内容管理系统,包括前台文章浏览和后台的文章管理。 今天就对系统中将要用到的缓存方面的东西,做一下感想。 1、用什么做缓存? 在之前的项目中接触过Redis和Mem...
  • qq_30679953
  • qq_30679953
  • 2017年06月22日 17:35
  • 360

掌握B/S结构程序开发

据统计数据,截至2008年10月底,我国中小企业总数已达到4200多万家,它们未来注定会成为中国经济主力。时代的变迁必然导致需求的变化,中小企业发展要上新台阶,那么过去很多中小企业使用的单机版软件都面...
  • ocean181
  • ocean181
  • 2009年03月19日 16:20
  • 4074

初识B/S结构编程技术

B/S结构编程语言            ASP(Active Server Page 动态服务器页面)技术         微软早期推出的B/S编程技术,出现在JSP和ASP.NET之前,...
  • wang379275614
  • wang379275614
  • 2013年06月24日 23:49
  • 5897
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:B/S结构的多层系统设计
举报原因:
原因补充:

(最多只允许输入30个字)