今天下午11月16日CSDN宝玉与您谈“如何最 优化您的ASP.NET”程序时间:下午三点~五点
地点:http://chat.csdn.net主题:“如何最 优化您的ASP.NET”程序

解决方案 »

  1.   

    不是是: http://chat.csdn.net
      

  2.   

    现在先公布一下聊天规则
     1.聊天开始后,大家把需要提问的问题提交给聊天现场的主持人落落(noahwing),我会负责将问题提交给嘉宾 2.由于活动时间不是很长,现场不要谈论与本次聊天无关的话题,将更多的时间留给二位老师回答大家的问题,谢谢大家的配合。 另外,在或动之前,我们一共收到9位朋友的来信问题,这9位朋友与等会积极提问的朋友都将有机会获得博文视点提供的的《最优化ASP.NET--面向对象编程实践》、《.NET大局观(第二版)》一册,所以请大家踊跃提一些有价值的问题,也希望csdn的朋友多参加我们的活动。
      

  3.   

    现场直播:请访问http://chat.csdn.net问:有人认为ASP.NET说到底就是如何更好的使用控件进行设计,不知道两位老师对此观点如何看?[2006-11-16 15:05:00]嘉宾[刘俊民]: 控件只是.net里面的一部分,所以不好下上面的结论,但是控件对于开发界面来说,确实可以取到事半功倍的作用
      

  4.   

    现场直播:请访问http://chat.csdn.net问:现在都流行多层架构,是不是对优化有很大帮助?[2006-11-16 15:08:00]嘉宾[刘俊民]: 多层架构,最主要是对于系统的可扩展性、多人分工等方面有帮助,但是在性能方面优化不大,甚至可能会影响到性能。还是要看具体情况来决定自己系统的分层
      

  5.   

    问:asp.net 写的许多页面经常在第一次访问的时候比较慢,这是为什么?[2006-11-16 15:10:00]嘉宾[陈远]: 大家都知道。NET程序编译后生成的都是il中间代码,asp.net全部都是基于。NET构建的, 所以asp.net页面在第一次运行时CLR会对代码进行重新编译和运行, 生成临时程序集并缓存起来, 你可以在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files这个目录下找到那些临时程序集的, 所以第一次运行会比较慢, 以后访问缓存而不需要重新编译就快了。
      

  6.   

    现场直播:问:作为优化WEB.NET,专家最注重那些方面的优化?今后在写的时候需要特别注意哪些方面的因素?[2006-11-16 15:12:00]嘉宾[刘俊民]: 优化是多方面的,我个人比较注意以下方面: 1. 优化系统的性能 2. 优化系统的可扩展性,使系统可以有更好的扩展性 3. 优化用户体验 在写的时候,要注意系统的分层、一些良好的编码习惯的养成
      

  7.   

    现场直播:请访问http://chat.csdn.net问:Atlas的巨大变化会对ASP.NET产生哪些影响?[2006-11-16 15:14:00]
    嘉宾[刘俊民]: 会使AJAX和脚本的开发更加简单,必然是开发门槛和开发成本也会降低,会增加更多的AJAX应用。
      

  8.   

    现场直播:请访问http://chat.csdn.net问:既然页面第一次被执行要编译,可不可以我预编译好直接部署,免去第一次执行的编译过程?[2006-11-16 15:17:00]嘉宾[陈远]: 第一次的执行编译是不可少的, 因为预编译的程序集仍然需要在CLR中由中间语言编译成本机代码, 所以第一次仍然会比较慢, 可以在部署结束后自己先把页面都浏览一遍以加快以后的响应速度
    =====================================
    最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
      

  9.   

    现场直播问:C#来创建存储过程是不是比T-SQL来创建存储过程执行效率更高?能给大家一个建议吗?[2006-11-16 15:18:00]
    嘉宾[刘俊民]: C#创建存储过程,在书写的时候更加方便,语法大部分程序员都熟悉,对于Sql Server2005来说,效率应该是一样的(我需要进一步确认)
      

  10.   

    现场直播
    问:浙江杭州滨江区江南大道480号滨海大厦5楼的温从攀问:C#来创建存储过程是不是比T-SQL来创建存储过程执行效率更高?能给大家一个建议吗?[2006-11-16 15:18:00]
    嘉宾[刘俊民]: C#创建存储过程,在书写的时候更加方便,语法大部分程序员都熟悉,对于Sql Server2005来说,效率应该是一样的(我需要进一步确认)
      

  11.   

    现场直播:请访问http://chat.csdn.net问:在ASP.NET中使用SOCKET时,当多用户同时使用时应该怎么处理比较好?[2006-11-16 15:21:00]嘉宾[刘俊民]: 抱歉我对Socket连接并不算太熟悉,就我的理解:采取一些有效的措施来避免Socket连接时间过长,例如尽可能使用异步请求,使用消息队列对请求进行排队,对一些常用结果进行缓存最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
      

  12.   

    现场直播:请访问http://chat.csdn.net问:如何评测是否优化过程的变化?(怎么知道是否优化了?)[2006-11-16 15:23:00]嘉宾[陈远]: 让用户评价,让成本评价,让运行效益评价。我觉得做软件做网站都应本着是服务的基本思想。优化可以是性能上的优化, 可以通过《最优化ASP.NET》书中介绍的性能监视器来获得客观的数据,也可以是开发成本上的优化,你发现自己的代码更加易于维护和扩展了, 也可以是运行效益上的优化,你不需要时常重启网站,清理不需要的资源,系统也更加robust不当机了。
    ========================================
    最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
      

  13.   

    现场直播问:请问“在网站建设中(或者说快速开发中小型网站时)一般不采用多层结构和OO的方法来开发,而在企业应用系统中一般才采用多层和OO方法开发”的说法对吗?[2006-11-16 15:24:00]
    嘉宾[陈远]: 我觉得做软件应该重视商业价值, 而不是有了oo这把新榔头就把一起都看成钉子:)
      

  14.   

    现场直播
    问:在Asp向.Net转变的时候,因为涉及到Freamwork所以,有的不能通讯(比如:session),这些问题怎么做优化呢?只能全部转成.Net?[2006-11-16 15:27:00]
    嘉宾[刘俊民]: 除了Session其实有很多更好的选择,例如Url参数,Cookie,Application,Cache,举个例子,在asp时代,我们登录授权是在登录成功后,用Session保存用户名等信息,但是.net里面我们不需要也不建议这样做了,.net的Form验证就会把登录成功的用户Id纪录到Cookie中,需要取资料时,从Cookie中获取到用户Id,根据用户Id去查询数据库,第一次查询后缓存起来,下次直接从缓存获取。
      

  15.   

    现场直播问:当aspnet_wp进程被终止以后,是否再次访问ASPNET页面时会再次被编译呢?[2006-11-16 15:28:00]
    嘉宾[陈远]: aspnet_wp是asp.net程序的真正执行环境,但是如果你的源文件没有发生变化的话,重启它不会导致重新编译。
      

  16.   

    问:在.NET世界里,为什么“流”会遭到冷落?[2006-11-16 15:39:00]
    嘉宾[刘俊民]: 实际上,流(Stream)在asp.net中应用还是不少,文件处理、网络传输、数据压缩、加密等地方都会用到,例如文件上传到服务器,服务器获取到的是一个InputStream。问:在设计一个类时,减少类的关注点有哪些好处?[2006-11-16 15:39:00]
    嘉宾[陈远]: 让类专注于自己最本分的工作,使得系统更加松耦合,维护起来也比较轻松些。关于设计方面优化,推荐大家看一看《Design Pattern》问:ASP.NET2.0对WAP2.0的开发优化方面有什么建议?[2006-11-16 15:39:00]
    嘉宾[刘俊民]: 这个问题抱歉我无法作答,因为没开发过Wap应用,也许您可以在网上搜索到相关信息。问:CPU没过多久就100%,请问从那方面着手去优化?[2006-11-16 15:36:00]
    嘉宾[刘俊民]: 首先要分析原因,找出来是什么导致CPU居高不下的,例如看任务管理器是asp.net的进程CPU高还是数据库的CPU占用高,如果是asp.net占用高,可以借助一些工具,或者纪录Log来分析可能的原因,然后针对性优化。如果是数据库,可以借助Sql Server Profiler来分析是哪几个Sql执行占用CPU高嘉宾[主持人]: 让我们用热烈的掌声祝贺武汉华中科技大学彭彭同学,他对编程知识的追求精神让我们感动,他获得了由博文视点提供的《最优化ASP.NET-面向对象编程实践》一册,请大家学习彭彭同学的精神。
    [2006-11-16 15:35:00]
    问:如何看待很多人认为有了Ajax就不用学JS的这种看法[2006-11-16 15:34:00]
    嘉宾[陈远]: ajax本身就是基于js实现的技术,如果光是会用atlas这样的库而不去理解实现细节,就等于光练外功而荒废了内功,会被真正的高手一掌打飞的。问:在做比较小的项目时,.Net面向对象方式是否真的有优势?[2006-11-16 15:33:00]
    嘉宾[刘俊民]: 是否分层主要还是要根据具体情况,不分层可能开发效率会更高,如果分层开发成本会相应增加,但是可扩展性、后续维护、多人协作等方面会更有优势。注:可参考前面一些类似问题的解答问:在做比较小的项目时,.Net面向对象方式是否真的有优势?[2006-11-16 15:31:00]
    嘉宾[陈远]: 我觉得还是那句话:“重视商业价值!”新技术的采用虽然会给你带来很多便利,但是这些收益是需要付出成本的,我们做项目的时候应该根据规模权衡地选择技术。技术是手段,结果更重要。当然,.NET面向对象的架构对应用程序构建的好处已经在《最优化asp.net》一书中有精辟论述了:)问:刘老师、陈老师,你们好!可否举个简单的例子来说明一下什么叫 ASP.Net 的优化?[2006-11-16 15:30:00]
    嘉宾[刘俊民]: asp.net的优化是多个方面的,例如优化性能,优化系统的架构,优化开发的方式问:当aspnet_wp进程被终止以后,是否再次访问ASPNET页面时会再次被编译呢?[2006-11-16 15:28:00]
    嘉宾[陈远]: aspnet_wp是asp.net程序的真正执行环境,但是如果你的源文件没有发生变化的话,重启它不会导致重新编译。问:在Asp向.Net转变的时候,因为涉及到Freamwork所以,有的不能通讯(比如:session),这些问题怎么做优化呢?只能全部转成.Net?[2006-11-16 15:27:00]
      

  17.   

    现场直播:http://chat.csdn.net
    问:请问ASP.net 网站开发,程序里用到的常量放在哪里比较好,性能高而且读取方便(不是指连接数据库的字符串)?为什么?[2006-11-16 15:42:00]
    嘉宾[刘俊民]: 可以放在一个单独的类;如果需要动态配置,可以放在web.config或者一个单独的xml文件;数据库也是个不错的选择,可以结合缓存来做。
      

  18.   

    现场直播:http://chat.csdn.net
    问:如何评测优化过程的变化?[2006-11-16 15:46:00]嘉宾[刘俊民]: 在确定优化方案后,应该考虑到每一步操作可能带来的影响,对于这样的影响应该怎么样来消除。评测分为几部分: 优化需要的资源:多少人,多少设配优化需要的时间:要花多少时间来做这个优化优化带来的结果:优化后相对优化有哪些改进,是否效果很明显
      

  19.   

    现场直播:http://chat.csdn.net问:听说Web.Config这个文件优化也很有讲究,不知道需要优化哪些元素?[2006-11-16 15:47:00]嘉宾[刘俊民]: Web.config实质是一个xml,所以在使用web.config是,要让自己定义的结构合理,内容不宜过大。
      

  20.   

    问:优化有没有一个可以比较容易考量的的过程,比如说先做什么再做什么的?[2006-11-16 15:49:00]
    嘉宾[陈远]: 我觉得可以优化的方面有很多,可以先调查一下网站当前运行状况具有什么问题,列一个具有优先级的需要优化的清单出来,然后有的放矢。如果你觉得流量很紧张,那么可以考虑是否该给页面“瘦身”,如果系统经常当机,那么就该考虑是不是程序中有一些资源没有合理释放。如果觉得代码太乱不好维护,那么就该考虑是不是需要重构了。=====================================
    最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
    更多详情请访问:http://www.dearbook.com.cn/book/123020
      

  21.   

    问:听说有个“ASP.NET页面优化器”,有什么帮助啊?[2006-11-16 15:50:00]嘉宾[刘俊民]: 我没有使用过该软件,不知道它是如何优化的,但是如果从asp.net页面优化角度考虑,也就是要优化输出的HTML: asp.net的ViewState代码是很占地方的,可以将这部分代码移到页面底部(代码前面) 对HTML进行压缩,删除多余的空行和注释=====================================
    最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
    更多详情请访问:http://www.dearbook.com.cn/book/123020
      

  22.   

    现场直播:http://chat.csdn.net问:在利用ASP.NET进行Web开发时,将应用程序分层有哪些好处?[2006-11-16 15:53:00]嘉宾[陈远]: 利用分层可以很好地将应用解耦,提高程序集的复用能力,数据层和逻辑层如果可以复用的话,那么表现层可以是一个web site,也可以是一系列web service,甚至是一个桌面应用程序
      

  23.   

    现场直播:http://chat.csdn.net问:如何优化更利于搜索引擎收录?[2006-11-16 15:55:00]嘉宾[陈远]: 尽量采用xhtml+css的w3c标准,页面布局合理,目前ajax应用对搜索引擎爬虫不是很友好,google和ms目前都在致力解决这个问题。
      

  24.   

    问:在利用ASP.NET进行Web开发时,将应用程序分层有哪些好处?[2006-11-16 15:58:00]
    嘉宾[刘俊民]: 合理的分层,可以带来很多好处,一般常见的分层就是将Web系统分成用户界面、业务逻辑和数据访问三层:扩展性:客户的需求是不停的在变,如果架构的分层合理,那么扩展起来就比较方便了,举个例子,对于数据访问层,如果使用Provider模式,那么在数据访问方面就很灵活,例如以前是SqlServer的数据库,需要新增加对Oracle数据库的访问,只要实现一下Provider抽象类就可以了(asp.net2.0的Membership就支持多种数据库) 多人协作:分层后,多人比较便于分工,例如可以美工专门作UI界面,数据库开发人员专门写存储过程 移植性:如果有一个新网站,我可能只要在原来架构基础上重新实现一套用户界面就可以了 ……现场直播:http://chat.csdn.net
    问:静态和非静态 有什么差别,在效率上和占用内存上有什么差别?[2006-11-16 15:57:00]嘉宾[陈远]: 运行效率和占用内存只和应用程序的质量有关,静态编译和非静态编译只是提供的部署手段不同而已。当然静态编译在第一次运行时对非静态编译有一定优势,但是把页面当成资源也一起编译入程序集的话反而还可能影响效率。问:如何优化更利于搜索引擎收录?[2006-11-16 15:55:00]嘉宾[陈远]: 尽量采用xhtml+css的w3c标准,页面布局合理,目前ajax应用对搜索引擎爬虫不是很友好,google和ms目前都在致力解决这个问题。
      

  25.   

    问:请问陈老师,对于封装在一个静态类里的常量,难道不是直接代替到代码吗?为什么还需要Cache?[2006-11-16 16:05:00]
    嘉宾[陈远]: 静态类的生命周期贯穿整个应用程序,而cache则提供了更灵活的对象生存策略,毕竟不是所有的资源有必要一直保存在内存中,而且内存也未必全放得下。cache提供的过期策略能兼顾性能和效率。问:能不能详细谈谈对于网站的优化?或者说网站优化主要分为哪几块?[2006-11-16 16:04:00]
    嘉宾[刘俊民]: 针对现在的网站,首先要进行一些分析,例如可以从以下几个方面(不限于这些方面):性能是不是需要优化,目前的网站性能是不是足够好?用户体验上方面是不是要优化,用户使用上是不是顺手?结构上是不是要优化,是不是在架构上要进一步优化,使系统的结构更加合理? 分析后可以针对性制定一些方案如果性能不好,要针对性优化性能。如果用户体验不好,要改进用户的体验,例如增加一下AJAX应用,改进一些操作界面如果架构要优化,要重新设计一下新的架构,怎么让旧的架构平稳过渡到新架构 问:网站里用到的一些常量,放在一个class里好,还是放在struct里好,有什么性能或者内存占用上的差别?[2006-11-16 15:59:00]
    嘉宾[陈远]: 如果需要频繁地传递这些常量的话还是建议放在class里面,然后把这个对象cache起来,因为struct是赋值拷贝而class是引用拷贝的。问:在利用ASP.NET进行Web开发时,将应用程序分层有哪些好处?[2006-11-16 15:58:00]
    嘉宾[刘俊民]: 合理的分层,可以带来很多好处,一般常见的分层就是将Web系统分成用户界面、业务逻辑和数据访问三层:扩展性:客户的需求是不停的在变,如果架构的分层合理,那么扩展起来就比较方便了,举个例子,对于数据访问层,如果使用Provider模式,那么在数据访问方面就很灵活,例如以前是SqlServer的数据库,需要新增加对Oracle数据库的访问,只要实现一下Provider抽象类就可以了(asp.net2.0的Membership就支持多种数据库) 多人协作:分层后,多人比较便于分工,例如可以美工专门作UI界面,数据库开发人员专门写存储过程 移植性:如果有一个新网站,我可能只要在原来架构基础上重新实现一套用户界面就可以了
      

  26.   


    现场直播:http://chat.csdn.net问:如何用ASP.NET缓存提高站点性能?[2006-11-16 16:08:00]
    嘉宾[刘俊民]: 如果有频繁的数据库或文件读取操作,并且数据是重复的,就可以考虑使用缓存把这些内容缓存起来,下次访问时直接从缓存读取,减少了文件IO或数据读取操作,能有效的提高性能,但是要注意使用的时候,不能保存过大的内容,还要注意保持缓存内容的更新问:怎么利用MVC的思路来做一个JS的框架.?[2006-11-16 16:08:00]
    嘉宾[陈远]: js也是一门oo的语言,设计的思路可以参考现有不少优秀的ajax库,比如atlas之类的。不过设计思路是相通的,js和c#对比起来不过是实现细节不同而已。当然也要考虑语言的局限性。
      

  27.   


    现场直播:http://chat.csdn.net问:问一下,一个项目中如果一个类被其它很多类都引用到,应该怎么处理这个类与其它类的关系?[2006-11-16 16:11:00]嘉宾[陈远]: 先看看它们之间有什么具体关系,然后再看如何改善架构。《Design Pattern》这本书里面有很多优秀的模式转注于处理类之间的关系,相信你看完会有似曾相识的感觉。
      

  28.   


    现场直播:http://chat.csdn.net
    问:在ASP.NET性能瓶颈中最重要的负荷常常是处理器的,一般通过WAS或Trace等发现处理器负荷较大时怎样控制处理器负荷在一个较为平稳的压力上?[2006-11-16 16:13:00]嘉宾[刘俊民]: 这个还是得对症下药,首先找出来什么原因导致负荷,然后看看是不是有优化的余地。一般可能是有一些复杂的运算导致CPU较高,看是否能优化算法,运算结果是否可以缓存,是否可以用一些冗余来代替频繁的运算
      

  29.   

    问:根据您的理解,您认为微软在ASP.NET的哪些方面做相应的改进?[2006-11-16 16:20:00]
    嘉宾[陈远]: asp.net现在仍在不停发展中,下一个版本的asp.net引入LINQ技术可以让数据获取和绑定更加轻松直观,而且和那些O/R Mapping库的思路不一样的是,LINQ是让.NET语言本身具有持久化数据的能力。而且下一个版本的asp.net会在易用易学上更进一步,周边服务器如IIS,SQL Server的进一步完善也会进一步奠定asp.net企业级开发的能力。嘉宾[主持人]: 本次活动是CSDN F2F&博文视点名家讲坛系列之四——与刘俊民、陈远在线讨论“如何最优化您的ASP.NET程序”,请关注本系列下一次活动-从Windows XP升级到Windows Vista您准备好了吗?”更有好书(《WindowsXP一点通》)相送。敬请关注。活动进行了已经一个多小时了,这样的机会非常难得,请大家把握好机会。[2006-11-16 16:17:00]
    嘉宾[主持人]: 请大家踊跃提问,奖品是属于那些积极好学的人,我们希望你们的问题带给我们更多的思考。
      

  30.   

    问:在众多的动态语言中,比如说Python、Ruby、Perl和PHP等,ASP.NET的优越性在哪里?[2006-11-16 16:22:00]嘉宾[刘俊民]: 我对于其他平台并不是很了解,就我对asp.net的了解说一些看法: Asp.net的优势在于它的平台,.net framework帮我们做了很多事情,它可以使用C#\vb.net这样的高级语言,有时候不仅有一种感觉:“asp.net在Web平台几乎无所不能”。这些是完全面向对象的,这样可以设计出很灵活的架构,在界面展现上,asp.net的控件对于开发效率有极大的帮助,缓存的合理运用可以极大的提高系统性能。借助VS开发,开发效率比较高。缺点就是对平台依赖性高,资源占用厉害。
      

  31.   

    问:AJAX中往往有好多的的附加文件的支持,请问那方面有好的优化手段吗?[2006-11-16 16:24:00]嘉宾[陈远]: 如果使用第三方库的话,的确会有不少不需要的代码包含进来,应尽量使用releas版本的js文件而不是debug版本。如果对js很熟悉的话可以剪裁那些js文件把不需要的代码去掉。
      

  32.   

    现场直播:http://chat.csdn.net问:请问一下,如果一个项目前期用ASP开发,后期部分模块用ASP.NET开发的,有哪些要特别注意的问题吗?[2006-11-16 16:27:00]
    嘉宾[陈远]: 我觉得问题主要可能出现在对用户状态的维护上,比如Session,Cookie的共享上。
      

  33.   

    现场直播:http://chat.csdn.net
    问:很多从事Web开发的程序员在工作一段事件后,普遍都有这样一种感觉:“搞Web开发其实是一种很没有技术含量的事情”,您是怎么认为的呢?[2006-11-16 16:29:00]
    嘉宾[刘俊民]: Web要做好其实不容易,我们要熟悉HTMl,熟悉CSS,会Javascript,甚至有时候还得学习一下Photoshop,切一下美工的图片,了解数据库,会写存储过程,熟悉后台语言,asp学完要学asp.net。真正要学好这些都不容易。之所以会让人产生误解,就是这一行学好不容易,但是门槛低,网上建站系统又比较泛滥,改改就出来一套系统了。所谓三十六行,行行出状元,如果针对这行有兴趣,扎扎实实打好基础,还是有不错的前景,因为越是门槛低的,越是没有什么人愿意花精力学精学透,如果真能学精学透,就很有前途了:)
      

  34.   

    现场直播:http://chat.csdn.net
    问:我现在负责银电联网,现在如何把ASP重写ASP.NET,有没有更快的方式?[2006-11-16 16:30:00]
    嘉宾[陈远]: MSDN上有专题论述,可以参考一下http://msdn2.microsoft.com/zh-cn/library/dddsc60w(VS.80).aspx
      

  35.   

    问:用vs.net2005的自动数据集生成好吗,还是像原来vs.net2003里的写多层代码的好?[2006-11-16 16:32:00]
    嘉宾[陈远]: vs2k5提供了强大的数据集定制能力,但是开发效率是用运行效率换来的,如果应用对性能要求比较高的话,还是建议自己设计高效的数据访问层。
      

  36.   

    --------------------------------------------------------------------------------
    问:请问用动态生成html的技术好还是用缓存技术好?[2006-11-16 16:33:00]嘉宾[陈远]: 生成静态html对服务器的压力最小,但是有内容更新的问题。至于选择静态还是动态生成,取决于应用的需求。能解决问题的技术才是好技术
    =========================================================
    最近ASP.NET 新书推荐:
    最具权威的O‘Reilly 《Programming ASP.NET 中文版(第三版)》
    更多详情请访问:http://www.dearbook.com.cn/book/123020
      

  37.   


    现场直播:http://chat.csdn.net
    --------------------------------------------------------------------------------
    问:请问用动态生成html的技术好还是用缓存技术好?[2006-11-16 16:36:00]
    嘉宾[刘俊民]: 首先分析一下两者的实质:HTML静态文件,访问时通过文件IO直接从IIS读取,访问效率高,但是更新不太方便,适合放新闻类数据;缓存是放在内存中,读写速度相对文件读写速度快,但是容量有限,如果数据量大,光靠缓存是不够的。所以建议你根据网站的访问量和数据量来具体考虑,两者结合起来使用。
      

  38.   


    现场直播:http://chat.csdn.net问:如何快速地实现多数据层的数据绑定?[2006-11-16 16:40:00]
    嘉宾[刘俊民]: 嵌套的数据绑定控件,例如嵌套的Repeater,子Repeater的数据源是父Repeater中子项目DataItem的属性问:请问在asp.net2中,gridview,detailview等控件除了体现强类型dataset外,还有什么优势和特点?[2006-11-16 16:40:00]
    嘉宾[陈远]: gridview和detailview提供的设计器支持可以很容易地定制显示样式,而且不需要自己处理分页甚至更新删除等事件细节,如果对效率有比较高的要求还是应该自己写分页和处理事件。
      

  39.   

    问:AJAX中,怎么样去掉多余的JS,因为我是用的AjaxPro.2,JS都是在注册上去的.谢谢帮忙.因为我一直感觉那些文件每次调出来都一样且比较多.[2006-11-16 16:43:00]
    嘉宾[刘俊民]: 这要看你使用的AJAX框架的具体实现了,看看它是否提供了接口让你更改输出内容,如果确实不行就只好更换AJAX框架或者自己来实现:)问:请问两位老师,IronPython的引入对于asp.net的开发有什么积极影响?编译模型的改变是否有助于提高页面的初次访问速度?我始终觉得把所有页面预先访问一遍这个方法实在是有些[2006-11-16 16:42:00]
    嘉宾[陈远]: IronPython只是在新闻上略微接触过,抱歉没法回答这个问题如果应用程序架构优秀,且在绝大多数情况下不会重启,那么初次访问速度慢还算是可以承担的代价。