Application变量: . 共享变量 . 不能持久保存 . 多个web服务器时不行,除非只是只读变量。 缓存
. 对静态内容非常理想 . 不要使用Response.Expires=0,使用负数: . Response.Expires=-10000; . Response.AddHeader “Pragma”,”no-cache” . Response.AddHeader “cache-control”,”no-store” . 服务器缓存 . proxy缓存 . 客户端缓存 部件 . 性能 . 伸缩性 . 分离商务逻辑和页面表现 . 被ASP或其他环境重用 . 事务处理 . 类型安全 . 存取操作系统特性 . 保护知识产权 . 在下列情况下使用Server.CreateObject: . MTS事务处理 . 上下文安全性 . ASP内部部件 . OnStartPage、OnEndPage . 使用<Object RunAt=server>延迟对象初始化 . 是否保存到Session或者Application变量中 性能
. Response缓冲:Response.Buffer=True . 关闭Connection并:set Connection=Nothing . 使用局部变量 . 用<Object >代替Server.CreateObject . 不要使用Session和Application变量 . 不要将COM对象存储在Session或者Application变量中 . 关闭脚本调试 . 避免重复的字符串相加 . 在费时的页面顶端使用Response.IsClientConnected . 使用MSMQ . 不要在Session或者Application中存储大数组 . 不要ReDim 数组 . 将集合类型的对象赋给临时变量 . 减小微处理器的最大线程数(运行regedt32,在HKEY_LOCAL_MACHINE/SYSTEM/ CurrentControlSet/Services/w3SVC/ASP/Parameters,增加ProcessorThreadMax,减小这个值,看看性能的变化;或者增大这个值。) . 设置AspScriptEngineCacheMax,使它等于ProcessorThreadMax*CPU个数。缺省的是30;(在系统路径下:/system32/inetsrv/adminisamples下,键入adsutil.vbs,设置/w3svc/AspScriptEngineCacheMax); . 减少Session.Timeout; . 在MMC中,设置ASP应用程序缓冲为有效。 把某些工作交给客户端:
. CSS、DHTML . XML . RDS . Remote Scripting . Xmlhttp . 客户端验证 . 减小文件大小 . 尽可能避免https和SSL . 使用Response.End测试性能 数据库 . 减少数据库存取访问; . 缓存变换后的结果; . 使用ODBC连接池和OLEDB资源池; . 使用系统DSN或者非DSN,不要使用DSN或者文件DSN; . 使ADO运行在双线程模式(Both-threaded):makefre.bat; . 使用ADO的Field对象; . GetString或者GetRows比较快; . RDS和XML把负载嫁到客户端; . 不要使用Select *,把字段写出来; . 尽量使用SQ. Server 7,不要使用Access; . 使用SQ. Server的特性:存储过程、Job、Join、sort、group . 使用SQ. Analysis,优化SQL的性能 . 使用索引 . 本地使用Name-pipes,远程使用Sockets . 准确地指定Command Type IIS 5的新特性 . 可靠的重新启动 . ASP性能提高 . Server.Transfer比Server.Redirect更好 . Server.Execute . Server.GetLastError  
2/2 首页 上一页 1 2 |