ASP 3.0对ASP 2.0的改进
下面的一些特征是从2.0版本中改进或升级来的。
1、 缓冲缺省为打开状态
ASP提供可选的输出缓冲。从IIS 4.0开始,这使得脚本执行得更快,并提供对流向浏览器的输出的控制能力。在ASP 3.0这个改进的性能通过改变Reponse.Buffer属性的缺省设置为True而反映出来。缺省状态下缓冲是打开的,这意味着最终输出只有在进程完成时,或脚本调用Response.Flush或Response.End方法时,才送至客户端。
注意,可以通过设置Response.Buffer属性为False,关闭缓冲。只有这样,才能发送XML格式化输出给客户端,让XML分析器在收到输出后开始工作。也可以使用Response.Flush发送大页面的一部分,这样使用户可以很快看到部分输出。
2、 Response.IsClientConnected的变化
Response.IsClientConnected属性可以在没有任何内容发送给客户端的情况下被读取到。在ASP 2.0中,这只在至少有一部分内容被发送后才能返回准确的信息。这一改进解决了IIS必须响应每个客户的请求(即使客户可能已经转移到另一个页面或站点)的问题。同时如客户在3秒内没有再连接,服务器上创建的完整的输出信息将被丢弃。
3、 带有默认文档的查询字符串
假如一个用户访问一个站点而不提供所请求页面的名字,默认的文档(如存在的话)将被送往客户端。然而假如他们提供了附在URL后面的查询字符串,这在早先的ASP版本中是被忽略的,而在IIS 5.0和ASP 3.0中这个查询字符串将被送到缺省页面。例如,在一个URL为:http://www.wrox.com/store/的目录中缺省页面为default.asp,则下面这两种情况都将名称/值对Code=1274送往default.asp页面:
http://www.wrox.com/store/?code=1274
http://www.wrox.com/store/default.asp?code=1274
4、 服务器端包含文件的安全性
服务器端的包含文件常用于一些敏感的信息,如数据库连接字符串或其他访问细节。一个虚拟的路径(即URL而不是完整的物理磁盘文件路径)可以用来指定这些文件。在这种情况下,早先的ASP版本不核对文件的安全设置和用户的证书;换句话说,授权(验证后)的用户和匿名的Web服务器帐号都没有与文件的访问控制列表相比较。在IIS 5.0和ASP 3.0,这些证书将被检查以防止非授权访问。
5、 可配置项移到元数据库中
在IIS 5.0中ProcessorThreadMax和ErrorsToNTLog的注册项被移到元数据库中,所有有ASP可配置参数能够通过Active Directory和Active Directory服务接口(ADSI)在元数据库中修改。
6、 应用程序中的双线程对象的性能
为了常有多个并发请求的ASP中获得最佳性能,组件应是双线程的(Both-Threaded)——即单线程单元(Single Threaded Apartment,STA)和多线程单元(Multi-Threaded Apartment,MTA),并且支持COM Free-Thread Marshaller(FTM)。不支持FTM的双线程的COM对象假如被存储在ASP Application状态对象中,将导致运行失败。
7、
| 对此文章发表了评论 |

