动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   .Net → 阅读文章

 ASP.NET程序员应用程序域须知

作者来源: 
阅读 1276 人次 , 2006-4-26 10:22:00 


  本文将讨论.NET的应用程序域,并且它们是如何对ASP.NET的执行和调度产生影响的。

  当在Windows中启动Notepad程序时,众所周知程序会执行一个包含在容器内的进程。可以启动多个Notepad的实例,并且每个实例都会在一个专注的进行程运行。使用任务管理器,可以看到在系统中当前运行的所有进程的清单。

  一个进程包括可执行从操作系统中保留的在内存中的代码和程序数据。在进程之内只少有一个包含在进程之内的正在执行指令的线程,并且在多数情况下有多个线程。如果程序打开了任何文件或者资源,这些资源将属于这个进程。

  一个进程也有一个分界线。包含在进程之内的错误代码不能在当前进程之外的地区腐化。在一个进程之内很容易通讯,但是专业技术要求一个进程对另一个进程通讯是必需的。每一个进程也在一个特殊的上下文安全系统中运行,这个安全系统规定在机器和网络中进程做什么。

  一个进程是一个在Windows 操作系统中独立运行的最小单位。这会给在一个单一服务器上对一大堆应用程序的ISP提出一个问题。ISP将会分离每一个在同一个服务器上的与另一个公司的应用程序干扰的ASP.NET应用程序。但是相关的发射和执行一个对成百上千的应用程序的过程成本禁止的。

  介绍应用程序域

  .NET介绍一个应用程序域的概念,或者AppDomain像一个过程,AppDomain是既是容器又是边界线。.NET运行时间使用AppDomain作为代码和数据的容器,就像操作系统一个过程作为代码和数据的容器一样。当操作系统使用一个过程来分离不整齐的代码时,.NET运行时间使用一个AppDomain来分离在一个安全边线内的代码。

  一个AppDomain仅仅属于一个单过程,但是单个过程能够保持多重的AppDomain。一个Appdomain创建起来相对容易(与一个过程比较起来),并且与一个过程比较起来具有少的维护费用。由于这些原因,一个AppDomain是ISP(提供成千上万的应用程序)的很好的解决方案。每一个应用程序可以生存在一个独立的AppDomain之内,并且许多这样的AppDomain可以生存于一个单一的过程(节省费用)之内。

  AppDomain

  在同服务器上创建了两个ASP.NET应用程序,并且没有任何特殊配置。会发生什么事情呢?

  一个单一的ASP.NET手工进程使ASP.NET应用程序变成两方面的主要程序。在Windows XP和Windows 2000中,这一程序被命名为aspnet_wp.exe,并且这一程序运行在本地的ASPNET计数器的前后安全关系中。在Windows 2003手工程序拥有w3wp.exe并且默认运行在NETWOR SERVICE中。

  一个对旬可以进住在一个AppDomain中。每一个ASP.NET应用程序将具有它自己的一套全局变量:Cache,Application进住进同一进程,.NET AppDomain是一个独立的单元。如果存有共享的或静态成员的类,并且那些类存在于两种应用程序之内,每一个AppDomain拥有它自己的静态字段的备份—数据并不共享。每一个应用程序的数据和代码安全独立存在并且在一边界之内由AppDomain提供。

  为了在AppDomain之间通讯或者在AppDomain之间交换对象,需要查看在.NET中穿过边界的通讯技术,例如.NET细微的或Web 服务。

  对将AppDomain作为边界思想的警告之一是ASP.NET应用程序在默认情况下会带着充分的信任运行。充分信任的代码可以执行本地代码,并且本地代码可以本质地在进程之内的任何内容。需要运行带着部分信任执行应用程序来约束存取不完整的代码并且对安全的AppDomain验证所有代码。

  
 本文TagsC#  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:用ASP和WML来实现数据库查询
· 下一篇:突破性的ASP+技术
· 从ASP.NET服务器控件插入客户端脚本
· 用.net静态变量取代Application,速度更快
· asp.net高级教程(五)-实战篇(中)
· 利用HttpRequest登录到某个网站,然后获取网站信息的程序示例
· ASP.NET 2.0中Gridview控件高级技巧


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077