当前位置: 首页 > 图文教程 > 网络编程 > ASP > IIS6.0下ASP的新增功能

ASP
看人家用使用InstallShield制作ASP安装程序(5)
看人家用使用InstallShield制作ASP安装程序(4)
看人家用使用InstallShield制作ASP安装程序(3)
看人家用使用InstallShield制作ASP安装程序(2)
看人家用使用InstallShield制作ASP安装程序(1)
取得浏览者的离开时间
base64编码、解码函数
动态显示图片的函数(显示广告条)
发送带附件的HTML格式邮件例程可以带附件
一种在父窗口中得知window.open()出的子窗口关闭事件的方法
一个老个写的无组件上传
避免asp的SQL的执行效率低
树型结构在ASP中的简单解决
无需数据库循环的无级分类代码
检查字符串strSource是否为big或big5码
有关重复记录的删除(SQL SERVER)
WINDOWS2000服务器账号登陆身份验证
使用VC++6.0制作ASP服务器控件简介
利用sql的存储过程实现dos命令的asp程序
WSH 直接将查询数据结果生成 EXCEL 表

IIS6.0下ASP的新增功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 136 ::
收藏到网摘: n/a

ASP 的新增功能
除了内部性能增强和优化外,该版本的 Active Server Pages(ASP) 还具有如下新功能:


更好的国际化和 UTF-8 支持
改进的 POST 支持
ASP 挂起检测
常用文件的缓存
UNC 增强
ASP 中的 COM+ 服务
单元模型选择
并排集合
COM+ 分区
跟踪程序
事务
ASP 的新配置数据库属性
更好的国际化和 UTF-8 支持
UTF-8 支持已经被扩展到所有 ASP 内置对象的属性和方法中。上一版本的 ASP 仅在响应和写入方面支持 UTF-8。


改进的 POST 支持
ASP 目前可以从客户端读取 Chunked 编码的 POST 数据。


ASP 挂起检测
当 IIS 网站繁忙时,可能会出现这样的情况:迅速生成最大数量的 ASP 线程,其中的一些 ASP 线程被挂起,从而导致性能下降。 HSE_REQ_REPORT_UNHEALTHY 以及万维网发布服务(WWW 服务)将回收主控 ASP.dll 的工作进程,并将项目添加到事件日志中。


 注意 如果线程不响应超时,则将其视为“挂起”。


常用文件的缓存
目前,ASP 除了保留内存缓存之外,还在磁盘上缓存一些最常用的文件。磁盘缓存的默认位置是 %systemroot%\System32\inetsrv\ASP Compiled Templates。可以通过设置 AspDiskTemplateCacheDirectory 配置数据库属性来更改硬盘缓存的位置。


UNC 增强
目前,ASP 能够处理 ASP 脚本中的 UNC 路径。


ASP 中的 COM+ 服务
如果想要在以前版本的 IIS 中使用 ASP 应用程序提供的 COM+ 服务,您必须创建可以调用那些服务的方法的 COM 组件。目前,您可以配置 ASP 应用程序以使用下面的 COM+ 服务而不必创建 COM 组件:


单元模型选择:
ASP 现在能够在多线程单元 (MTA) 中运行其全部线程。如果 COM 组件主要是自由线程或双线程组件,则将 ASP 线程作为 MTA 运行可显著改善性能。


要使 ASP 应用程序能够在 MTA 中运行,您可以在应用程序级别使用配置数据库设置 AspExecuteInMTA。这意味着您可以让一个应用程序运行于 ASP MTA 线程上,而让第二个应用程序运行于 ASP STA(单线程单元)线程上。ASP 线程的默认设置仍为 STA。


 要点 当您将 ASP 应用程序的运行环境从 STA 切换到 MTA(或从 MTA 切换到 STA)时,则模拟令牌将过时。这可能导致应用程序在无模拟的情况下运行,让其用可能允许访问其他资源的进程的标识有效地运行。如果您必须切换线程模型,请在进行更改之前禁用该应用程序并将其卸载。


下列示例设置默认网站应用程序 (W3SVC/1/ROOT) 在 MTA 中执行:


On Error Resume Next
set providerObj = GetObject("winmgmts://MyMachine/root/MicrosoftIISv2")
' 获得对名为“默认网站”的 ASP 应用程序的引用
set IIsWebVirtualDirSettingObj = providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")
WScript.Echo "Before: AspExecuteInMTA = " & IIsWebVirtualDirSettingObj.AspExecuteInMTA
' 将 ASP 应用程序设置为在 MTA 中执行
IIsWebVirtualDirSettingObj.AspExecuteInMTA = 1
IIsWebVirtualDirSettingObj.Put_()
WScript.Echo "After: AspExecuteInMTA = " & IIsWebVirtualDirSettingObj.AspExecuteInMTA
并排集合:
并排 (SxS) 集合允许 ASP 应用程序指定要使用哪个版本的系统 DLL 或传统 COM 组件,例如 MDAC、MFS、MSVCRT、MSXML 等。例如,如果您的 ASP 应用程序依赖 MSXML 2.0 版,则可以确保即使是在服务器上应用了 Service Pack 之后,您的应用程序仍使用 MSXML 2.0 版。任何新版本的 MSXML 仍安装在计算机上,但是保留 2.0 版且由应用程序使用。配置 SxS 程序集要求您知道 DLL 的路径,且 COM+ 清单文件存在于每个需要使用 DLL 的虚拟目录中。COM+ 清单是包含有关 DLL 安装位置信息的 XML 文件。IIS 不验证清单是否存在。清单的外观类似于下面的文件摘录:



<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity publicKeyToken="75e377300ab7b886" type="win32" name="Test4Dir" version="1.0.0.0" processorArchitecture="x86"/>
<file name="DirComp.dll" hash="35ca6f27b11ed948ac6e50b75566355f0991d5d9" hashalg="SHA1">
<comClass clsid="{6C6CC20E-0F85-49C0-A14D-D09102BD7CDC}" progid="DirComp.PathInfo" threadingModel="apartment"/>
<typelib tlbid="{AA56D6B8-9ADB-415D-9E10-16DD68447319}" version="1.0" helpdir=""/>
</file>
</assembly>


您可以在 IIS 端以编程方式或者通过使用 IIS 管理器来启用并排集合。


在 IIS 端使用 IIS 管理