备案域名交易 老域名购买,已备案域名出售,已备案过期域名查询,老域名注册,已备案域名抢注,老域名转让,万网已备案域名,九江网站建设

ASP.NET的执行原理

动态WEB程序均是以文本的方式存在服务器的。JSP和ASP.NET以前的技术中,只有当服务器收到执行请求以后,服务器才会将这些程序的源代码交送编译器编译,而编译一次程序是需要时间的,如果每次请求都需要编译一次,花费在编译上面的时间将会很多,从而大大降低了程序执行的效率。

如果程序只追求效率,那么直接将源代码编译成为最终代码的方法当然是最好。但是这样会带来了另外一种烦恼,编译后的程序修改起来很困难,而web程序却需要经常修改。如果web程序已经被编译成为机器代码,那么这种机器代码不是一般人所能看懂的。

当ASP.NET程序第一次执行时,CLR会将ASP.NET程序源代码首先编译成为MSIL代码,并存放在服务器上,这是编译的第一阶段。在此阶段的编译中,CLR花费了大量的时间去优化代码(第一次执行所消耗的时间大部分都被花费在这个上面了),其目的就是为了让第二阶段的编译执行得更快。在此阶段生成的MSIL代码非常接近于机器代码,根据编译原理,一种程序代码越近机器代码其编译执行的速度就会越快,所以在第二阶段的编译中,将MSIL代码编译成机器代码的速度是很快的。而当ASP.NET程序被第二次请求执行时,就可以绕过第一阶段的编译过程,直接将存储在服务器上的MSIL代码编译执行,这就大大地提供了程序的执行效率。

2014-08-16 | 发布:zhushican | 分类:建站教程 | 评论:0