asp.net 异步页面
前几天我没事在图书馆借本··嘿嘿,挺有意思的,另外那天在贴吧看到的一才女的问题突然想到了··就看了看,挺有意思的。
具体总结的内容我今天写出来,肯能有点长,但是对网站绝对有用。
页面的处理默认情况下,处理ASP。NET页面的模型本质上是同步的。这说明,页面的流程是固定的,每一页由一个线程处理,而且线程在处理完前不会释放。服务器线程池中的线程师有限的,一旦服务器用完所有的线程,你就会碰到可恶的“服务器不可用”的错误。甚至在此前,由于等待线程和内务的任务增多,你会发现性能下降。所以,要改善性能,不仅希望尽可能快的处理页面,还要尽快地线程释放回线程池。通常无法显示地控制何时释放线程,但是倘若采用异步处理,就能释放线程,让它从长时间运行的页面脱身。
asp.net 2.0为异步页面引入了一个简单易行的模型,不过一定要理解网页中的异步到底是什么含意,这很重要。从客户浏览器接收到一个请求时,在页面返回给浏览器之前必须处理整个页面。异步页面不允许分阶段的地传输页面,尽管可以将输出缓冲起来 ,但这是两码事。如果想传递部分页面,接下来一步的运行一个任务,然后,再把更多数据发回给客户,这是做不到的。
页面由一个县城从上到下地处理。这一点很重要,因为要由一个线程来负责这个请求,如果一个页面停顿,这可能是因为正在通过一个web服务访问远程数据,请求处理完成之前这个线程是无法释放回服务器。如果大量请求都存在这种情况,服务器就很容易用光所有线程。异步页面则可以缓解这种情况,如果页面在正常处理过程中可能要完成一个长时间运行的任务,可以不再依赖于单线程。需要指出哪些任务需要异步的处理,在在PreRender事件之后,异步任务启动。处理请求的线程释放回线程池,页面请求等待,知道处理可以继续(异步任务完成时就可以继续处理了)。asp.net知道异步任务何时完成(任务开始时它注册了一个委托),所以可以从线程池取一个线程,并继续处理这个页面。
异步处理不光能加快单个页面的处理。而能加快整个网站的速度。线程池中有更多可用线程,这就意味着可以处理更多的请求。·····
看起来是不是很酷·····
这只是目前的理论,等等会操作了,我会接续吧实现方式写出来··这样就更酷了·
相关文档:
1.前台页面一般不用gridview datalist treeview updatepanel 等控件,因为他们会生成很多我不想要的代码。而且嵌套一大堆table
2.用repeater+div+css+ul li已经足够我做很多东西了。
3.发布后的页面,可以把一些空行和换行 和一些不必要的空格去掉,尽量减少aspx页面的容量。提高加载速度。
4.在页面的title写上本页内容 ......
刚刚 看到这么一个问题,这里也做个标记:http://topic.csdn.net/u/20080411/14/7b0f9da5-0413-4149-91e9-72c3df3018a3.html?seed=327251592
第一种方式:
//在Visual Studio 2008中调试通过
testPop_Page.aspx:主页面ASPX代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  ......
我想在asp中加一个链接,指向asp.net网页,但asp.net的网址是经过HttpUtility.UrlEncode变形和HttpUtility.UrlDecode变回的,而asp的server.urlencode却产生不了和HttpUtility.UrlEncode一样的编码,请问有没有解决办法
补充:原来asp.net的是"web.aspx?str="+HttpUtility.UrlEncode(str)
和HttpUtility.UrlDecode(Requ ......
模板化的数据绑定控件为我们在页面上显示数据提供了根本的灵活性。你可能还记得ASP.NET v1.x中的几个模板化控件(例如DataList和Repeater控件)。ASP.NET 2.0仍然支持这些控件,但在模板中绑定数据的语法已经被简化和改善了。本文将讨论在数据绑定控件模板中绑定数据的多种方法。
数据绑定表达式
ASP.NET 2.0改善了模板中 ......
认识ASP.NET配置文件Web.config
一、认识Web.config文件
Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的 ......