企业应用系统:C/S vs B/S三层J2EE架构之争
来源:互联网 发布:工匠精神 知乎 编辑:程序博客网 时间:2024/06/05 20:59
企业应用系统: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三层架构。
- 企业应用系统:C/S vs B/S三层J2EE架构之争
- 企业应用系统:C/S vs B/S三层J2EE架构之争
- B/S、C/S架构之比较
- B/S三层架构[转载]
- 【系统架构】B/S架构和C/S架构
- B/S vs C/S
- 【C/S】 VS 【B/S】
- B/S VS C/S
- B/S VS C/S
- C/S VS B/S
- web应用程序 两层c/s、三层c/s、b/s架构对比及Servlet由来
- C/S B/S架构
- C/S、B/S及三层结构
- C/S、B/S及三层结构
- C/S、B/S及三层结构
- tomcat c/s 三层架构
- 新闻发布系统,B/S模式下的三层应用
- MVC与B/S,C/S结构,三层架构/两层架构 的关系
- android.os.AsyncTask注意问题
- JavaScript/jQuery、HTML、CSS 构建 Web IM 远程及时聊天通信程序
- document读取xml文件
- C++ 用map的例子
- windows linux 源码跨平台
- 企业应用系统:C/S vs B/S三层J2EE架构之争
- log4j配置
- 谈谈Spring配置中<bean>的id和name属性的花拳秀腿
- 开发那点事系列五 - 发散思维&成就技术
- 代码感想
- hdoj 1242 Rescue
- Google Maps API 申请方式变更
- window.location.reload();页面实现跳转和刷新
- 使用NetFlow分析网络异常流量(1)