b>技巧16:在任何可能时使用Server.Transfer,而不要用Response.Redirect
Response.Redirect告诉浏览器请求另一个不同的页面,这常常用于引导用户到登录页面或者出错处理页面。由于重定向强迫了一个新页面请求,结果是浏览器必须要与Web服务器循环2次,并且Web服务器必须处理一个额外的请求。IIS5.0引进了一个新功能Server.Transfer,它执行在同一服务器上的页面传输,这将避免额外的浏览器-Web服务器的数据循环,形成良好的系统性能,对于用户也有较好的响应时间。
技巧17:避免使用服务器变量
存取服务器变量导致Web站点建立一个特殊的请求并收集所有的服务器变量,而并不是你要求的那个变量。这类似于在文件夹中取回一个特殊的文件,要想取回一个文件,就得首先获取所在文件夹的信息。
不要存取非法的Request对象(比如Request("Data")),对于那些不在Request.Cookies、Request.Form、Request.QueryString或者Request.ClientCertificate中的项目,隐含就指向了Request.ServerVariables变量,而这些变量要比其他集合对象慢得多。
技巧18:调整Web服务器
有几个IIS调整参数可以提高站点性能。比如,对于IIS4.0,我们经常发现提高ASP ProcessorThreadMax参数能够产生重大的效果,特别是在那些要等待后台资源比如数据库或中间件产品的站点。在IIS5.0中,你可以发现调整ASP线程通道要比调整AspProcessorThreadMax效果更佳。
最佳的配置设定取决于应用程序代码、支持的硬件设备以及客户端的工作量。发现最佳配置的唯一方法就是测试。
相关参考资源
Optimizing ASP scripts
- Developing
Scalable Web Applications
- Got
Any Cache? by Nancy Winnick Cluts
- Maximizing
the Performance of Your Active Server Pages by Nancy Winnick Cluts
- 15
Seconds: Performance Section
- Enhancing Performance in ASP - Part I by Wayne Plourde
- When
is Better Worse? Weighing the Technology Trade-Offs by Nancy Winnick
Cluts
- Speed
and Optimization Resources by Charles Carroll
Tuning IIS
- The
Art and Science of Web Server Tuning with Internet Information Services
5.0
- Leveraging
ASP in IIS 5.0 by J.D. Meier
- Tuning IIS
4.0 for High Volume Sites by Michael Stephenson
- Tuning
Internet Information Server Performance by Mike Moore
- Navigating
the Maze of Settings for Web Server Performance Optimization by
Todd Wanke
- Managing
Internet Information Server 4.0 for Performance by Hans Hugli
ADO and SQL Server
- Top
Ten Tips: Accessing SQL Through ADO and ASP by J.D. Meier
- Improve
the Performance of your MDAC Application by Suresh Kannan
- Pooling
in the Microsoft Data Access Components by Leland Ahlbeck and Don
Willits
- SQL
Server: Performance Benchmarks and Guides
- Improving
the Performance of Data Access Components with IIS 4.0 by Leland
Ahlbeck
- Microsoft
Data Access Components (MDAC) and ActiveX Data Objects (ADO) Performance
Tips by Leland Ahlbeck
- Microsoft
SQL Server 7.0 Practical Performance Tuning and Optimization - The Server
Perspective by Damien Lindauer
- Microsoft
SQL Server 7.0 Practical Performance Tuning and Optimization - The Application
Perspective by Damien Lindauer
- Accessing
Recordsets over the Internet by Dino Esposito
ASP components and threading models
- ASP
Component Guidelines by J.D. Meier
- Q243548:
INFO: Design Guidelines for VB Components under ASP
- Threading
Models Explained by Nancy Winnick Cluts
- So
Happy Together? Using ActiveX components with Active Server Pages
by Nancy Winnick Cluts
- Developing Active
Server Components with ATL by George Reilly
- Agility
in Server Components by Neil Allain
- Building
High-Performance Middle-Tier Components with C++ by Jon Flanders
- Active
Server Pages and COM Apartments by Don Box
- House
of COM: Active Server Pages by Don Box
- House
of COM: Contexts by Don Box
- House
of COM: Performance Trade-offs of the Windows 2000 Component Execution
Environment by Don Box
- Building
COM Components That Take Full Advantage of Visual Basic and Scripting
by Ivo Salmre
- Component
Design Principles for MTS
Dictionary components
- Creating
a Page Cache Object by Robert Coleridge
- Abridging
the Dictionary Object: The ASP Team Creates a Lookup-Table Object
by Robert Carter
- Caprock Dictionary
- Site
Server Commerce Edition includes a dictionary component
Session state
- Q175167:
HOWTO: Persisting Values Without Sessions
- Q157906:
HOWTO: How To Maintain State Across Pages with VBScript
- XML-based Persistence
Behaviors Fix Web Farm Headaches by Aaron Skonnard
- House
of COM: Stateless Programming by Don Box
Performance and scalability
- Blueprint
for Building Web Sites Using the Microsoft Windows DNA Platform
- Server
Performance and Scalability Killers by George Reilly
- Microsoft
Visual Studio Scalability Center
- Fitch
& Mather Stocks 2000
- Tuning the
FMStocks Application
- High-Performance
Visual Basic Apps by Ken Spencer
- Duwamish
Books, Phase 4
- Top
Windows DNA Performance Mistakes and How to Prevent Them by Gary
Geiger and Jon Pulsipher
- Building
from Static HTML to High-Performance Web-Farms by Shawn Bice
Tools
- Microsoft Web Application
Stress Tool
- I
Can? Stress It Enough -- Load Test Your ASP Application by J.D. Meier
- Windows
DNA Performance Kit
- Monitoring
Events in Distributed Applications Using Visual Studio Analyzer
by Mai-lan Tomsen
Books
- Professional Active Server Pages 3.0, Wrox Press. (Especially
Chapter 26: Optimizing ASP Performance, by George Reilly and Matthew
Gibbs)
- Microsoft Internet
Information Services 5.0 Resource Guide (bundled with Windows
2000 Server Resource Kit, Microsoft Press.
- Microsoft Internet
Information Server Resource Kit (for IIS 4.0), Microsoft Press.
- Programming
Distributed Applications with COM and Microsoft Visual Basic 6.0
by Ted Pattison, Microsoft Press.
- Effective
COM by Don Box, Keith Brown, Tim Ewald, and Chris Sells; Addison-Wesley.
- Developing
Web Usability: The Practice of Simplicity by Jakob Nielsen, New
Riders.
ASP Web sites
- Microsoft
TechNet for IIS
- LearnASP.com
- 4GuysFromRolla.com
- 15Seconds.com
- AspToday.com
- Asp101.com
- AspLists.com.
Many specialized mailing lists including:
- Fast Code!
- ASP Advanced
- Not Newbie
- State Management
- Scalability
- Visual Basic Components
- XML
- C++/ATL Component Building
- UseIt.com: Web Usability
ASP style
- ASP
Best Practices by George Reilly
- ASP Quick Lessons
by Charles Carroll
- Planning
for ASP by John Meade
- ASP Guidelines
by J.D. Meier
XML
- Inside
XML Performance by Chris Lovett
- Inside
MSXML3 Performance by Chris Lovet
|