C# 高级开发应用 : 智能客户端架构介绍

智能客户端架构介绍

说到智能客户端,我们首先想到的是目前流行的智能设备。如智能手机、pad、智能pos、及各种仓库智能rf设备。本文讲解的智能客户端架构是一种系统架构模式,典型的方式是数据库服务+中间件业务服务+客户端应用,其实智能设备的应用开发也基本都是采用的这种框架模式。智能客户端架构有其独特的优势,越来越多的项目采用了此种架构。

C# 高级开发应用 : 智能客户端架构介绍_第1张图片

    C/S架构与B/S架构都存在不可避免的局限,而智能客户端恰好能克服它们存在的问题,提高用户满意度,降低总体拥有成本。人们对智能客户端的关注开始于微软。事实上,自微软推出.NET战略以来,其最令人关注的技术新动向之一就是对智能客户端(Smart Client)技术的深入研究与应用推广。尤其是微软公司将这种体系结构纳入到.Net框架后,它立即引起了业界广泛的关注。微软对于智能客户端的定义是这样的: 智能客户端是易于部署和管理的客户端应用程序,它们通过统筹使用本地资源和到分布式数据资源的智能连接,从而为您提供高适应性的、快速响应的和丰富的交互式体验。有专家认为,智能客户端技术是瘦客户端应用的代替技术。由于软件巨头微软的大力推动,业内人士预计,它将在软件产业变革中扮演重要的角色。

    你的软件产品是B/S(Browser/Server,浏览器/服务器)还是C/S(Client/Server,客户端/服务器)架构的?如今当软件供应商在应标时,经常被用户问到类似的技术问题。是B/S还是C/S已成为当前软件产业发展中不可回避的技术架构问题。

其实,无论是B/S还是C/S都不新鲜。C/S技术从上世纪90年代初出现至今已经相当成熟,并得到了非常广泛的应用,其结构经历了二层C/S、三层乃至多层C/S的演进。B/S技术则是伴随着Internet的普及而来。

应该说,B/S和C/S各有千秋,它们都是当前非常重要的计算架构。在适用Internet、维护工作量等方面,B/S比C/S要强得多; 但在运行速度、数据安全、人机交互等方面,B/S则远不如C/S。综合起来可以发现,凡是C/S的强项,便是B/S的弱项,反之亦然。因此,问题也就因此而产生了,我们的软件产品到底该用B/S还是C/S架构呢?一场关于C/S与B/S的口水战也由此而在软件业界拉开了序幕。在互联网泡沫盛行的2000年至2002年间,这场口水战达到了顶峰。但直到现在,人们也没有辩出谁是谁非。

事实上,这场口水战不可能有胜负出现,因为B/S与C/S具有不同的优势与特点,它们无法相互取代。例如,对于以浏览为主、录入简单的应用程序,B/S技术有很大的优势,现在全球铺天盖地的Web网站就是明证; 而对于交互复杂的ERP等企业级应用,B/S则很难胜任,从全球范围看,成熟的ERP产品大多采用二层或三层C/S架构,B/S的ERP产品并不多见。

智能客户端: B/S与C/S的融合

包括微软在内的很多软件供应商注意到了软件架构的争论,人们不禁要问: 是否有可能将B/S与C/S的优势融合呢?

微软的答案是肯定的。智能客户端就是它给出的解决方案。微软认为智能客户端应用程序可以将胖客户端应用程序的优点和瘦客户端应用程序的部署和可管理性优点结合起来,使之在资源的利用上达到某种平衡。目前,微软已形成Windows智能客户端、Office智能客户端,以及移动智能客户端等解决方案。

智能客户端技术 既不属于C/S,也不属于B/S,兼具了二者的优势。而作为服务的中间件应用可以多种技术方式提供,基于微软IIS的 webservice,wcf,webapi;remote架构,socket通信等等,都可以作为中间件提供业务服务。目前比较流行的方式也可以基于http的get、post方式的调用,返回json方式的数据,由客户端进行解释及执行操作。

你可能感兴趣的:(系统架构,智能客户端,c#,系统架构,后端,中间件,架构)