个人管理功能

在CSDN Blog撰写技术文章,即有机会入选CSDN技术中心,现在就去免费注册!已注册用户,点击登录

搜索
热门标签
专题历史

有人说SOA是一种IT策略,有人说SOA是一种架构理念,还有人说SOA是一种服务。SOA到底是什么?它将带来什么?软件产业的变革亦或是新的机遇下的挑战?业界权威专家带领我们一起去深究,去探索。BEA三位重量级专家与您共同探讨SOA

随着WPF/E更名为正式名称Silverlight,以及Silverlight 1.1 Alpha 版本的发布,答案变得清晰,而且令人兴奋! - 一个跨操作系统,跨浏览器的Web应用平台出现了。Silverlight 这样一个4.5MB的浏览器插件(1.1 Alpha文件)是如何做到的这些的?周岳: SilverLight-Web应用的一道强光

中国移动用户数量在大踏步地发展与增长,根据产业部的数据,仅三月就新增了670万户。预估计6月份之后,中国很快将迎来第五亿手机用户(平均不到3人拥有一台手机)而J2ME做为最重要的手机跨平台技术,凭借Java平台以其良好的开放性和支持能力,得到了众多手机厂商的支持。对众多开发者来说,J2ME程序易于移植,轻松实现“一次编写,到处运行”。J2ME系列开发专题,将带你从最基本的工具安装,环境配置开始,进入移动应用开发的世界。
 
CSDN移动开发系列之-“J2ME开发实训”

7月31日-8月1日,即将在上海召开甲骨文全球大会•亚太地区会议同期举行的甲骨文开发者大会,这是一项付费参加的面向开发人员的活动。在甲骨文开发者大会期间,您将听到世界一流的专家讲述如何使用Java、.NET、XML和PL/SQL以及Ajax、PHP、Spring、Groovy on Rails等流行技术来简化开发过程。在为期两天的甲骨文开发者大会中,您将能够提高自身的开发技能,扩充知识,参加几十场由专家主持的深入细致的技术讲座并在专家的辅导下进行上机操作、了解高级技能和获得详细指导。在甲骨文开发者大会期间,您有机会直接向业界一流的技术专家和开发人员请教。欢迎参加甲骨文全球大会·2007·亚太地区开发者大会

2007年6月29日,自由软件基金会宣布,其创始人Richard Stallman将在GNU的网站上,在本周太平洋时间星期五上午9点通过视频发布GPLv3。本来,GPL并不是所有开源组织所认可的协议。其从出现以来一直存在争议,GPL被认为是一种“病毒式”的协议,BSD的fans和老牌Unix黑客们认为,他们编写Unix的年头都比GPL声明要长得多,他们更愿意采用比GPL更加的自由的BSD协议。今天,开源社区中有70%左右的项目采用了GPL。很多在开源社区的老牌黑客们认为,Richard Stallman所鼓吹开源软件的言行与当年卡尔·马克思号召产业无产阶级反抗工作的努力如出一辙。在GPLv3的第三版修订案发布时,开源软件团体中的许多成员都反对这种协议。尤其是Linux的核心开发小组,其中29个高级架构师有28个反对这个协议。Linus Torvalds称这个协议有“宗教性质”,并公开反对。而整个软件行业特别是开源社区对GPLv3的争论也愈演愈烈。GPLv3:大教堂和集市的新一轮对抗

2007年7月14日由CSDN与ThoughtWorks联合主办的第二届“敏捷中国”技术大会在北京丽亭华苑酒店召开,多位开源社区和ThoughtWorks公司的技术领袖即将带来精彩的演讲。本次“敏捷中国”技术大会集中展现塑造敏捷企业所需的方方面面:业界领先的敏捷项目管理工具;极大提升软件开发效率的新语言和新框架;数据库领域的敏捷实践;全方位的敏捷项目管理指导;还有身临其境的亲身体验。来自开源社区和ThoughtWorks公司的技术领导者们将带领听众全面感受敏捷企业。“敏捷中国大会”现场直击

从2004年起,在每年的夏季,CSDN都会举办面向中国程序员的大型网上调查活动。这是中国样本最丰富的开发者社区调查,持续、全面和深入地反映了中国开发者社群自身状况、各项技术、工具、产品的使用状况和发展趋势,是完整、准确地了解中国开发者市场的重要参考资料。本次调查覆盖基础信息、.NET、Java、C/C++、Web开发、数据库应用开发、软件工程及项目管理、移动及嵌入式开发、开放源代码、企业信息化等10个领域。还有惊喜大奖等着你哦,赶快进入吧! 2007中国软件开发者大调查正式启动

推荐作者
  • 大宝大宝

    时间如流水,知惜方成功。

  • SkymanSkyman

    江苏人氏,梅兰芳之老乡。现游学渝州之最...

  • ralph623ralph623

新进作者
  • 冲 s冲 s

  • 小鱼小鱼

  • 棱角棱角

    多年J2EE构架设计与开发经验,专注于企业信息系统建设,精通Java设计模式,并能熟练的运用到企业开发中。 精通Struts与Spring框架。数据库方面精通Oracle数据库,从事过数据库方面的开发以及oracle优化方面的工作。

最新技术图书推荐
AJAX的适用范围以及对服务器的性能影响

发表日期:2006-12-14
更新日期:2006-12-14
作者文章阅读次数:3118

源自:待缘 (个人网站) 标签:网络管理

您认为本文应该得        共有7人参与打分打印|收藏|讨论|投诉

利用AJAX可以为用户带来很好的用户体验,但处理的不好的话会导致服务器承受更大的负担,同样处理得好的话,可以减轻服务器多余的负担,具体情况就看怎么用了。

      AJAX热了也有两三年了,它对WEB带来革命性的改变以及对为用户带来的前所未有的体验感受是毋庸置疑的。 

虽然AJAX会给WEB应用程序带来很多好处,但是在AJAX应用用在什么地方,怎么用仍然需要认真考虑,千万不可以滥用。

    首先阐述几个老问题:

    第一个老问题,由于AJAX需要javascrip的支持,另外还需要用到xmlhttp对象,所以对于浏览器的兼容性需要考虑。可喜的是,市面上决大多数的浏览器都已经支持xmlhttp以及javascript。到目前,我们几乎可以最小程度的考虑兼容问题,但并不代表可以忽略它,毕竟不同的浏览器执行相同客户端代码会产生不同的效果。

    第二,用户的习惯性,很多用户习惯与使用传统的方式来与服务器进行交互,虽然他们也许已经厌倦,但是习惯就是习惯,突然出现一种新的方式的时候反而会让他们不知所错。AJAX不需要刷新浏览器,因此在很多情况下用户执行一个操作后发现浏览器并没什么动静会感到很迷茫,特别是当网络速度慢的时候,用户的一个请求需要很长时间才能反应,在等待的这段期间,用户也许会认为WEB有问题关掉浏览器或则再做别的什么事情。另外,用户会习惯于浏览器提供的一些功能,比如前进、后退、刷新、停止,这些功能是用户会经常并习惯用到的,当采用AJAX的时候会导致这些功能多失效,当然现在有很多人都写出了解决的方法,网上有很多这些解决方案的文章。

    另外还需要注意的一个问题是对服务器的性能的影响。

    AJAX异步请求,这个方式会带来一个新问题。传统方式中,对于一个用户而言用户每对服务器进行一次请求需要等待服务器做出响应后才能对服务器进行另一次请求,这样后面的请求能确保是在上一个请求执行完以后处理的。但是AJAX打破了这种束缚,一个用户就可以快速的连续的执行多次请求,相对于传统方式来说,这会对服务器提出更高的要求以及对程序设计者带来更大的挑战。通常情况下,应该尽量避免这种情况,例如sina的评论页,分页的拖动条采用的就是异步请求的方式,用户拖动游标可以很方便的定向到需要的分页,但是在拖动的过程中,游标每到一个分页点都会向服务器请求相应的数据,如果用户以一个特定的速度将游标拖动到第10页,那么服务器将会有9次的请求是多余的,如果这9次多余的请求都让服务器执行了读取数据库的工作,那么这将会浪费大量的服务器资源。如果用户发现第10页没有他想要的东西,于是又移动到第9页,服务器又将请求相应的数据,但是实际上服务器在曾经获取过同样的数据,如果这样的事发生在现实的生活中也许你就会觉得这样真的很多余很浪费。

    OK ,还是以分页为例,如果我们不用拖动条,按照以前的分页思路“所得及所需”,每次请求不同的页只获取该页的数据,并使用AJAX给用户更好的体验感受。这样好象就合理了,因为以前大家都这么做,但是实际上并不是最合理的方法。通常情况下,用户最喜欢看的是前3页,这3页被反复请求的可能性是最大的。在传统模式中, 由于不管怎么样都会回送服务器处理,所以在分页思路上提出了“所得及所需”的说法。但是如果在使用AJAX的时候还用这样的思路就稍显死板。既然都使用了AJAX那么很能确定的是你的用户需要支持javascript,那么何不在客户端再分页呢?前面说到,用户最喜欢的前3页,假如,用户需要从第1页读到第3页,如果是“所得及所需”,那么不管用没用AJAX,用户在读到第3页的这个过程中都需要请求3次服务器。
     我们来比较一下这两种情况(假设没页10条数据):

   1、 产生3次请求+打开3次数据库+每次读取并传送10条数据的数据量
   2、产生1次请求+打开1次数据库+每次读取30条数据并传送

情况2比情况1少打开2次数据库,上执行2次数据库查询,少2次请求,多20行的查询数据量

很明显,在这个过程中第2中情况下,用户将会等待更少的时间,并且服务器也会做更少的处理。

这就是我所提出的新的分页方式,一次性读取出用户将会多次请求的数据,然后在客户端进行分页。用户在第一次请求的时候获得更多的数据,然后在通过客户端处理,这样在用户从第1页读到第3页的这个过程中不需要再请求服务器,前3页的切换会变得更方便,也会减轻服务器的负担。唯一的坏处很明显是用户第一次请求会等待稍微长一点,但是多20条数据的查询量和传送量比起页面切换所节约的时间来说是微不足道的,另外别忘了AJAX,利用它我们可以让用户感觉不到这多的20条数据的处理量。

利用AJAX可以为用户带来很好的用户体验,但处理的不好的话会导致服务器承受更大的负担,同样处理得好的话,可以减轻服务器多余的负担,具体情况就看怎么用了。

 

您认为本文应该得        共有7人参与打分打印|收藏|讨论|投诉

暂无图片

asp.net 爱好者,努力的学习.net技术;同时等待缘来到我身边!OVER

评论

CSDN技术中心团队官方Blog:http://blog.csdn.net/techcenter/,反馈邮箱:techcenter at csdn.net (注意:请把 at 换成@)


网站简介广告服务网站地图帮助联系方式诚聘英才English问题报告

北京百联美达美数码科技有限公司  版权所有  京 ICP 证 020026 号

Copyright © 2000-2006, CSDN.NET, All Rights Reserved