客户端技术之抉择

客户端技术之选择


    当前的客户端应用程序模型大致分为两种:C/S(客户端/服务器模型)和B/S(浏览器/服务器模型)。对我们软件开发人员,要在以浏览器为基础的瘦客户端 (Thin Client) 应用程序模型和胖客户端 (Rich Client) 之间做出取舍,难免有些困难,不如先让我们分析下它们各自的优缺点。

    以浏览器为基础的瘦客户端应用程序的优缺点:

Ø  易于安装:可以用于许多桌上型计算机,并且和客户机算计的操作平台无关。大多数计算机已经默认安装有浏览器软件(有些应用系统需要基于IE浏览器,或者需要安装java虚拟机,在此暂且忽略不计)。

Ø  易于部署与维护:只需要在服务器端进行部署和维护工作。

Ø  必须在线工作:工作效率和网络是否延迟有关。

Ø  不能充分利用客户端计算机的资源:只能通过有限的HTML语言来呈现用户界面,没有利用客户端计算机的计算处理能力。只能利用浏览器的打印功能来打印资料,不适用于企业的报表打印。

Ø  网络传输量大:由于客户端不能保存状态数据,因此必须在客户端和服务器之间传输用户界面内容以及所需的数据。

Ø  安全性较低。对于服务器来说可以通过防火墙软件来过滤数据,因为所有传输内容都是基于HTTP端口。但很难对数据进行加密和签名以保证在传输过程中的完整性(HTTPS似乎并不能解决问题)。

Ø  适合电子商务或不要求严格控制客户端的应用程序。

  胖客户端应用程序的优缺点:

Ø  可以离线工作:前提是本地必须有缓存数据的能力,这涉及到与服务器数据同步的问题。

Ø  充分利用客户端计算机的资源:可以为用户提供丰富的界面元素,可以存取本机磁盘与本机应用程序接口 (API),执行速度较快。

Ø  网络传输量较小:只需在客户端和服务器之间传输数据。

Ø  安全性较高。可以方便的在客户端和服务器执行加密和解密操作,同时也可以通过Web Service来消除传统的应用程序诸如防火墙和HTTP的障碍。

Ø  安装、部署和维护工作较为繁琐:对客户端计算机在操作平台和附加软件上有一定的限制和要求。

Ø  适合企业内部应用程序。

  除此之外,还有一种不是基于浏览器的瘦客户端应用程序。通过诸如 Microsoft Terminal Server Citrix System Independent Computing Architecture 产品(或称之为 A/S 模型)这样 的技术和工具把它们提供给用户。这些类型的解决方案可以让用户运用胖客户端的经验,并通过集中的软件安装和维护来进行管理,这对公司来说是很划算的。这种模式的问题是,当应用程序没有连接到应用服务器时,用户就不能用了。客户端不进行真正的处理,处理完全依赖应用程序服务器,这种情况会导致服务器性能问题,并消耗桌面计算机的CPU周期。

  正是鱼与熊掌不可兼得,无论用谁弃谁?终将成为“鸡肋”。有没有一种客户端模型,或者说一种技术,能继承两者的优点,摈弃两者的缺点呢?正是在这种背景下,微软推出了Smart Client技术。这一技术将B/SC/S的优势融合,Smart Client应用程序可以将胖客户端应用程序的优点和瘦客户端应用程序的部署和可管理性优点结合起来,使之在资源的利用上达到平衡。为了更精准地理解这一客户端模型,可参考系统架构与信息交互示意图。


1 系统架构与信息交互示意图

如图1所示,一方面Smart Client可以拥有C/S强大的表现能力,同时在部署简洁方面上并不输于B/S;另一方面,可以将整个系统以模块的形式分割,利用Web服务通信,使整个系统松耦合,以后每个模块都可以剥开独立使用,这样也增加了复用的机会。具体来说有如下优势。

首先,客户端安装简便。该系统在安装时只要将一个主程序文件下载到本地,直接运行即可,无须改变注册表或共享的系统组件,其他应用组件将在第一次运行时自动下载;

  其次,服务器端更新便捷。只需将新版本的程序发布在服务器上,由客户端自动发现最新版本的程序和应用组件,并自动下载和更新;允许脱离服务器时,利用本地的客户端程序和应用组件进行工作;

  再次,能够轻松实现后续开发和部署。应用软件开发商可根据企业应用系统的公共接口进行开发,然后将应用组件发布在企业的服务器上,客户端应用程序将自动发现并加载该应用组件;

另外,Smart Client提供个性化用户界面,用户可根据喜好自行设置客户端应用程序,配置信息将被保存到服务器上。

在对智能客户端技术的优点激动人心之余,我们也要冷静的面对它的局限性。结合我行柜面系统的应用,我认为智能客户端技术的主要弊端在于:平台和客户端不是相互独立的,客户端依赖于windows平台,而且客户端需要安装.NET Framework








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值