您的位置:首页 > 运维架构 > 网站架构

企业应用系统:C/S vs B/S三层J2EE架构之争

2012-08-10 10:52 246 查看

企业应用系统:C/S vs B/S三层J2EE架构之争

Merry Zhang

最近企业信息化系统(特质运行在专用网里的特定行业应用系统)中,需要开发新的销售系统。由于销售分布于全国各地分公司,有人便提出来,为了方便部署,需要开发Web版的销售信息系统。企业原有一套C/S的三层架构的软件快速开发平台,而为了开发Web版的销售信息系统,则有需要开发一个基于B/S的三层架构的开发平台,众所周知,Web版的应用的开发的难度是大于桌面应用系统的难度的,最重要表现在:

(1)Web技术体系复杂,需要掌握CSS,JavaScript,HTML,JSP,Servlet知识,需要掌握如Cookies,
Session,Web缓存技术等。

(2)Web前端是无状态的。

(3)多线程问题,需要更多地考虑线程安全。

(4)在C/S下,Session是可控的,而B/S下,Session需要和Cookie进行协调,而且Cookie的时效性是有限制的。

(5)还需要在成熟框架上进行二次开发,而C/S可以构建自己的客户端的开发框架(MVC)。

对于基于J2EE的C/S三层架构来说,企业目前已经有了一个现成的已经开发的快速开发平台,开发的团队对于这种开发模式也十分熟悉了,开发销售信息系统时,则只需要在总结之前的系统的开发经验的基础上,进行架构设计的完善,开发人员不需要转变太多的设计思维,不需要掌握复杂的Web开发体系。

除上述之外,C/S和B/S三层架构在构建企业应用系统到底有哪些优缺点呢?我们如何选择呢?

问过企业内部支持B/S的三层架构的人员,他们的观点主要是:

(1)觉得J2EE(B/S)代表了时尚潮流,代表了先进。

(2)为了数据和业务逻辑集中,实现部署、升级的方便。

(3)为了应用服务器集中、方便做集群和各种负载均衡。

(4)觉得B/S的应用客户端只需要IE浏览器,不需要安装其它软件,软件更新方便。

针对上述的观点,

(1)评价系统优劣最直接的三要素:方便、快捷、稳定,而不是技术看上去有多先进,根据企业现有的条件以及已经开发了的系统来看,C/S的系统从实用的角度来看,的确是更加方便,快捷和稳定,主要表现在,用户交互性更好,客户界面组件,想开发成如何样子,便可以自己定制,开发快捷,不需要考虑会话,Cookies等。

(2)三层C/S一样可以做到为了数据和业务逻辑集中,实现部署、升级的方便。

(3)三层C/S一样可以实现应用服务器集群和负载均衡。

(4)客户端的软件自动远程更新做得完善,可以弥补C/S在(4)的方面的不足。

此外,B/S还存在以下两个弱点:

(1)实时响应速度差。

(2)人机交互能力太弱,有些特殊的地方还不得不借助技术ActiveX和Applet。使得B/S仅有的一点点部署方便的优势荡然无存。

综合企业应用系统的特点,开发团队的力量,C/S与B/S三层架构的特点,企业没有理由选择B/S的三层架构而不选C/S三层架构。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐