正在加载图片...
用 common language runtime和服务框架网络应用程序提供了一个可靠的、自动化的、 可扩展的主机环境。 ASPNET也受益于 common language runtime集成模板,简化了应 用程序的配制。另外,它提供简化应用程序开发的服务(如状态管理服务)以及高水平 的编程模板(如 ASPNET Web Forms和 ASPNET Web services) ASPNET的核心是HTTP运行语言,一个高性能的用于处理基于低级结构的HTTP 请求的运行语言,而基于的结构与 MicroSoft Internet Information Services(IS)所提供的 ISAPI结构相似。如同你在图5所看到的,HITP运行语言是在象服务器上的ⅡS或客 户机上的正之类的 unmanaged主机过程中运行的受控代码。 Http runtime负责处理引 入的所有HTTP请求,并对每个请求应用程序的URL进行解析,然后把请求分配到应 用程序以进行进一步的处理。HIP运行语言是多线程的,并异步处理请求,因此劣质 的应用程序代码阻碍不了它对新请求的处理。而且HTTP运行语言假定失败必会发生, 因此它被控制为尽最大力量自动地从访问冲突、内存泄漏、死锁等事故中恢复过来。除 非是硬件故障,运行语言的目标是100%的可靠性 ASPNET使用基于构件的 Microsft net框架配制模板,因此它获得了如 XCOPY 配制、构件并行配制、基于XML配制等优点。 ASPNET另一个主要优点是,它支持应 用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可 以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被 覆盖。当文件更新后,系统会温和地转换到新的版本。系统检测文件变化,并用新的应 用程序代码建立一个新的应用程序实例,然后将引入的请求路由到应用程序。当所有被 现存的应用程序实例处理的未完成的请求处理完后,该实例就被销毁了。 在应用程序中,HIP请求是通过HTTP模块的一个管道路由的,最终到达请求处 理程序。HTTP模块和请求处理程序是一些实现特殊接口的受控类,而这些接口是由 ASPNET定义的。这种管道结构使得为应用程序增加服务非常方便:只需补充一个 HTIP模块。例如,安全,状态管理及跟踪都被实现为HTP模块。高级可编程模块, 如网络服务和网络表单,通常被实现为请求处理程序。一个应用程序能链接与多个请求 处理程序一一每个处理程序一个URL,但是所有的HTTP请求都通过同样的管道路由 网络基本上是一个无状态模型,并且在HITP请求间没有联系,这使得编写网络应 用程序很困难,因为应用程序通常需要维护跨多个请求的状态。 ASPNET增强了由ASP 引入的状态管理服务,以便为网络应用程序提供三种类型的状态:应用程序、会话、用 户。就象在ASP中一样,应用程序状态特定于一个应用程序实例,并且不会持久。会 话状态是特定于一个用户与应用程序间的会话的。与ASP会话状态不同, ASPNET会 话状态储存在一个独立的过程中,并且可把它配制成可以储存到一个独立的机器上。这 使得会话状态当应用程序在网络群( Web farm)扩展时非常有用。用户状态类似于会话 状态,但通常它不会超时,并且是永久性的。因此,用户状态对储存用户参数和其它个 性化的信息是有用的。所有状态管理服务都被实现为HTTP模块,因此它们容易增加到 应用程序管道中,或从中删除。如果除了由 ASPNET提供的服务外,还需要额外的状 态管理服务,那么可由第三方的模块提供。 ASPNET同样提供高速缓冲服务,以改善性能。输出缓冲可完全节省网页翻译 段缓冲储存部分的网页。由于提供了相应的类,所以只要需要,应用程序、HTTP模块 以及请求处理程序可以在高速缓存中储存任意数量的对象 下面快速浏览一下建立在 ASPNET可编程模块之上的两个高级可编程模块 ASPNET网络表单和 ASPNET网络服务 ASP.NET网络表单用 common language runtime 和服务框架网络应用程序提供了一个可靠的、自动化的、 可扩展的主机环境。ASP.NET 也受益于 common language runtime 集成模板,简化了应 用程序的配制。另外,它提供简化应用程序开发的服务(如状态管理服务)以及高水平 的编程模板(如 ASP.NET Web Forms 和 ASP.NET Web Services)。 ASP.NET 的核心是 HTTP 运行语言,一个高性能的用于处理基于低级结构的 HTTP 请求的运行语言,而基于的结构与 MicroSoft Internet Information Services (IIS)所提供的 ISAPI 结构相似。如同你在图 5 所看到的,HTTP 运行语言是在象服务器上的 IIS 或客 户机上的 IE 之类的 unmanaged 主机过程中运行的受控代码。HTTP runtime 负责处理引 入的所有 HTTP 请求,并对每个请求应用程序的 URL 进行解析,然后把请求分配到应 用程序以进行进一步的处理。HTTP 运行语言是多线程的,并异步处理请求,因此劣质 的应用程序代码阻碍不了它对新请求的处理。而且 HTTP 运行语言假定失败必会发生, 因此它被控制为尽最大力量自动地从访问冲突、内存泄漏、死锁等事故中恢复过来。除 非是硬件故障,运行语言的目标是 100%的可靠性。 ASP.NET 使用基于构件的 Microsft .NET 框架配制模板,因此它获得了如 XCOPY 配制、构件并行配制、基于 XML 配制等优点。ASP.NET 另一个主要优点是,它支持应 用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可 以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被 覆盖。当文件更新后,系统会温和地转换到新的版本。系统检测文件变化,并用新的应 用程序代码建立一个新的应用程序实例,然后将引入的请求路由到应用程序。当所有被 现存的应用程序实例处理的未完成的请求处理完后,该实例就被销毁了。 在应用程序中,HTTP 请求是通过 HTTP 模块的一个管道路由的,最终到达请求处 理程序。HTTP 模块和请求处理程序是一些实现特殊接口的受控类,而这些接口是由 ASP.NET 定义的。这种管道结构使得为应用程序增加服务非常方便:只需补充一个 HTTP 模块。例如,安全,状态管理及跟踪都被实现为 HTTP 模块。高级可编程模块, 如网络服务和网络表单,通常被实现为请求处理程序。一个应用程序能链接与多个请求 处理程序——每个处理程序一个 URL,但是所有的 HTTP 请求都通过同样的管道路由。 网络基本上是一个无状态模型,并且在 HTTP 请求间没有联系,这使得编写网络应 用程序很困难,因为应用程序通常需要维护跨多个请求的状态。ASP.NET 增强了由 ASP 引入的状态管理服务,以便为网络应用程序提供三种类型的状态:应用程序、会话、用 户。就象在 ASP 中一样,应用程序状态特定于一个应用程序实例,并且不会持久。会 话状态是特定于一个用户与应用程序间的会话的。与 ASP 会话状态不同,ASP.NET 会 话状态储存在一个独立的过程中,并且可把它配制成可以储存到一个独立的机器上。这 使得会话状态当应用程序在网络群(Web farm)扩展时非常有用。用户状态类似于会话 状态,但通常它不会超时,并且是永久性的。因此,用户状态对储存用户参数和其它个 性化的信息是有用的。所有状态管理服务都被实现为 HTTP 模块,因此它们容易增加到 应用程序管道中,或从中删除。如果除了由 ASP.NET 提供的服务外,还需要额外的状 态管理服务,那么可由第三方的模块提供。 ASP.NET 同样提供高速缓冲服务,以改善性能。输出缓冲可完全节省网页翻译, 段缓冲储存部分的网页。由于提供了相应的类,所以只要需要,应用程序、HTTP 模块 以及请求处理程序可以在高速缓存中储存任意数量的对象。 下面快速浏览一下建立在 ASP.NET 可编程模块之上的两个高级可编程模块: ASP.NET 网络 表单和 ASP.NET 网络 服务。 ⚫ ASP.NET 网络表单
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有