欢迎来到天天文库
浏览记录
ID:9805175
大小:46.00 KB
页数:5页
时间:2018-05-10
《ajax聊天室文献综述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Ajax网络聊天室的设计与实现文献综述一、前言部分信息化的迅猛发展使人们生活方式发生深刻变革。人们之间的对话不再是局限在面对面的方式,网络聊天室提供交流信息的另一种场所。传统的聊天室为了实时显示用户在线情况和用户发送的消息,需要定时刷新页面。页面刷新不仅要占用一定的系统资源和网络带宽,而且出现“白屏”现象,对良好的用户体验很不利。Ajax是Web应用的一种新方法,利用Ajax技术开发的聊天室系统不仅解决了页面刷新带来的白屏问题,而且能降低服务器和网络传输负荷。随着互联网应用的普及,web应用以其良好的扩展性、易于部署、维护方便等优
2、点逐渐成为软件开发的主流。早期的Web应用采用的是同步交互过程,即用户首先向Web服务器提交一个请求或行为呼叫,服务器接收到客户请求后执行相应处理操作,最后向用户返回处理结果.服务器在处理请求时,用户处于等待状态,有时如果超过了服务器响应时间,甚至返回“页面不可用”等提示。另外,当我们只想改变页面的部分数据时,用户的请求会导致服务器重新返回整个页面内容,包括那些没有改变的数据,这不但增加了网络传输的数据量,还影响了客户端的响应速度,为什么我们不能“按需”获取数据呢?Ajax技术可以很好的解决上述web应用中存在的问题。Ajax技术
3、是Web2.0的核心之一,本质上是一种RIA(RichIllternetApplication)技术。RIA是指具有高度互动性和丰富用户体验的网络应用程序,它既具有消息确认、无刷新页面之下提供快捷的界面响应、拖放式等桌面应用程序的特点,同时又具有部署简单、跨平台等Web应用程序的特点。Ajax技术提供了客户端与服务器异步通信的能力,从而使用户从请求一响应一再请求的循环中解脱出来,同时降低了网络传输的数据量,提高了客户端的响应速度,改善了用户使用体验,使得web应用可以接近甚至达到类似“桌面应用”的效果。正因为Ajax有上述优势,目
4、前GoogleSuggest、Gmail、GoogleMaps、A9、Yahoo!News,SinaBlog……都在应用着Ajax技术。不知不觉中,Ajax应用已经遍布网络的每个角落。纵观所有应用,“更好的用户体验”是其的共同目标,在浏览器中实现桌面用户界面体验是Web开发的一种趋势。从Google到IBM、Oracle、Yahoo!、BEA、RedHat、Novell等,Ajax技术获得了业界众多IT巨头的支持,其快速发展是值得期待。技术创新和标准化是Ajax技术发展的必由之路,W3C已组建相关工作组,专门从事相关的规范开发工作
5、。显然,Ajax技术并不是适合所有Web开发的技术。二、国内外研究的主要成果因为Ajax技术的精髓是用异步交互替代了传统的同步交互,所以当用户操作时间大于服务器响应时间的时候,使用Ajax的效果非常明显。而当程序性能的瓶颈在于服务器响应时间的时候,Ajax无法解决程序运行缓慢的问题。因此,Ajax更适合应用在交互频繁的轻量级Web上。在应用Ajax开发方面,Google公司成功地将Ajax技术应用到它们的商业产品中。GoogleMap和GoogleSuggest都应用了这项技术。当用户在使用GoogleMap浏览地图时(这里所说的
6、浏览包括地图的放大缩小,以及地图的平移),并没有向服务器提交什么请求,就可以浏览到地图各个部分的内容。在这里,正是应用了Ajax技术,使得地图并不是以刷新的方式显示,而是每次都在原有数据的基础上以增量方式显示。这样,用户感觉就好像是在自己的计算机上查看本地的地图一样。微软也在积极开发Ajax应用:它将Ajax技术应用到MSNSpace上面。当用户使用MSNSpace提交回复评论时,浏览器会暂时停顿一下,然后在无刷新的情况下把用户提交的评论显示出来,这个就是应用了Ajax的效果。目前,Ajax应用最普遍的领域是GIS-Map方面。G
7、IS的区域搜索强调快速响应,Ajax的特点正好符合这种要求。在应用Ajax技术开发过程当中,处于核心位置的Ajax引擎实际上是一些复杂的JavaScript程序。随着网络应用和界面表现的复杂化,使用面向过程的JavaScript语言描述表现逻辑将会变得很困难。同时,JavaScript的兼容性和调试都会成为使用Ajax技术的一个障碍。为了解决这些问题,开发人员已经开发出了一些基于Ajax技术的框架,方便了开发人员使用,有利于Ajax技术的进一步推广。当然,任何技术都是有局限性的,Ajax也不例外。Ajax更新页面无需刷新重载,这也
8、使传统的一些用户交互行为变得不可用,如后退、前进和刷新等。另外,移动设备(如手机、PDA等)现在还不能很好的支持Ajax,Ajax对流媒体的支持也没有JavaApplet和Flash这样成熟的技术好。因此,一些辅助的平台和插件的开发也将是Ajax技
此文档下载收益归作者所有