摘要: 周 婷 (zhouting@cn.ibm.com), 软件工程师, IBM 中国软件开发技术实验室2007 年 8 月 31 日很多应用譬如监控、即时通信、即时报价系统都需要将后台发生的变化实时传送到客户端而无须客户端不停地刷新、发送请求。本文首先介绍、比较了常用的“服务器推”方案,着重介绍了 Comet - 使用 HTTP 长连接、无须浏览器安装插件的两种“服务器推”方案:基于 AJAX 的长轮询方式;基于 iframe 及 htmlfile 的流方式。最后分析了开发 Comet 应用需要注意的一些问题,以及如何借助开源的 Comet 框架-pushlet 构建自己的“服务器推”应用。“服务 阅读全文
posted @ 2008-11-20 17:44 leonardleonard 阅读(120) 评论(0) 推荐(0) 编辑
摘要: Http环境本身是一种无连接状态的架构,在这种架构下服务器只能是被动的接受客户端的请求,返回结果,而无法主动的给客户端发送数据。而在很多需要实时数据交互(比如Web IM)的场景中,我们却希望能及时得到服务器给我们返回的数据。此时,一种最为普遍的做法是:在客户端用定时器,定时去请求服务器的服务,来得到最新数据。而这样一来,很多时候却是在做无用功,频繁的请求也会无端的增加服务器和客户端在请求Web服务上的消耗。那么是否有一种更好的办法,既可以及时得到服务器的返回,同时又可以减少做无用功,以及频繁请求带来的性能问题呢?记得前不久,在园子里有这样的一篇文章,介绍了几种WEB环境定时刷新数据的机制。其 阅读全文
posted @ 2008-11-20 17:43 leonardleonard 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 作者:http://www.cnblogs.com/cathsfz/Ajax的长连接,或者有些人所说的Comet,就是指以XMLHttpRequest的方式连接服务器,连接后服务器并非即时写入相应并返回。服务器会保持连接并等待一个需要通知客户端的事件,该事件发生后马上将数据写入响应,这时候客户端就以相当“实时”的方式接收到事件通知。具体的通信模型,请参考这篇文章:《Comet:基于 HTTP 长连接的“服务器推”技术》,里面已经说得非常详细了,我就不再复述了。我们接着开始讨论如何使用.NET实现这个模型。首先我们能想到的是,我们需要一个Web Service,可以是ASP.NET Web Se 阅读全文
posted @ 2008-11-20 17:41 leonardleonard 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 服务器推送(Server Push) 推送技术的基础思想是将浏览器主动查询信息改为服务器主动发送信息。服务器发送一批数据,浏览器显示这些数据,同时保证与服务器的连接。当服务器需要再次发送一批数据时,浏览器显示数据并保持连接。以后,服务器仍然可以发送批量数据,浏览器继续显示数据,依次类推。 客户端拉曳(Client Pull) 在客户端拖曳技术中,服务器发送一批数据,在HTTP响应或文档头标记中插入指令,让浏览器“在5秒内再次装入这些数据”或“10秒内前往某URL装入数据”。当指定的时间达到时,客户端就按照服务器的指示去做,或者刷新当前数据,或者调入新的数据。 其实push 和 pull 这两种 阅读全文
posted @ 2008-11-20 17:15 leonardleonard 阅读(226) 评论(0) 推荐(0) 编辑
摘要: JSON 入门指南 打印本页');//--将此页作为电子邮件发送');//--级别: 初级廖 雪峰, 撰稿人2008 年 8 月 22 日JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON 格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。 尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web 应用中,开发者经常为 XML 的解析伤透了脑筋,无论是服务器端生成或处理 阅读全文
posted @ 2008-11-20 17:06 leonardleonard 阅读(172) 评论(0) 推荐(0) 编辑
摘要: Web Client Software Factory系列(3):View-Presenter模式 作者: TerryLee .NET设计模式(18):迭代器模式(Iterator Pattern) 作者: TerryLee .NET设计模式(19):观察者模式(Observer Pattern) 作者: TerryLee .NET设计模式(2):单件模式(Singleton Pattern) 作者: TerryLee .NET设计模式(3):抽象工厂模式(Abstract Factory) 作者: TerryLee .NET设计模式(4):建造者模式(Builder Pattern) 作者: 阅读全文
posted @ 2008-11-20 16:26 leonardleonard 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 一、抽象类: 抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则其派生类必须覆盖它们。 二、接口: 接口是引用类型的,类似于类,和抽象类的相似之处有三点:1、不能实例化; 2、包含未实现的方法声明; 3、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员); 另外,接口有如下特性:接口除了可以包含方法之外,还可以包含属性、索引器、事件,而且这些成 阅读全文
posted @ 2008-11-20 15:52 leonardleonard 阅读(148) 评论(0) 推荐(0) 编辑