当前位置:文档之家› asp介绍 外文翻译

asp介绍 外文翻译

毕业论文外文翻译ASP from A to ZNancy Winnick ClutsDeveloper Technology EngineerMicrosoft CorporationOctober 22, 1998ContentsIntroductionWhat ASP IsHow ASP WorksASP from A to ZBibliographyIntroductionThere's lots of helpful information about Active Server Pages (ASP) available on this site and other sites. If you have plenty of time to search for the information, you can find answers to most of your questions. But if you want to find out what tools you can use to debug ASP or how to handle errors, you need to do some digging. This article provides an easy way to find information that pertains to ASP, including a short definition of what ASP is, how ASP works, and an alphabetical list of terms and tips that relate to ASP. In the A-to-Z list, you will see a brief description as well as pertinent links to more detailed information (when that information is available). This article is meant to be a "living" document. That means that I plan on updating it with new tips and removing tips that no longer apply. If you are an ASP developer and have a "juicy" tip, send it to me. If I publish it here, you'll get credit and the everlasting gratitude of throngs of other ASP developers.What ASP IsActive Server Pages is a programming environment that provides the ability to combine HTML, scripting, and components to create powerful Internet applications that run on your server. If you are already creating Web sites that combine HTML, scripting, and some reusable components, you can use ASP to glue these items together. You can create an HTML interface for your application by adding script commands to your HTML pages and you can encapsulate your business logic into reusable components. These components can be called from script or other components.How ASP WorksWhen you incorporate ASP into your Web site, here's what happens:1.The user brings up a Web site (like MSDN Library) where the default page has the extension .asp.2.The browser requests the ASP file from the Web server.3.The server-side script begins to run with ASP.4.ASP processes the requested file sequentially (top-down), executes any script commands contained in thefile, and produces an HTML Web page.5.The Web page is sent to the browser.Because your script runs on the server, the Web server does all of the processing and standard HTML pages can be generated and sent to the browser. This means that your Web pages are limited only by what your Web server supports. Another benefit of having your script reside on the server is that the user cannot "view source" on the original script and code. Instead, the user sees only the generated HTML as well as non-HTML content, such as XML, on the pages that are being viewed.ASP from A to ZThis section contains a list of terms and tips to help you understand ASP. They are listed in alphabetical order. Scroll down to the topic that interests you or click the letter in the alphabet below to jump down to the section containing the topic. I cribbed, er, I mean, compiled these tips and definitions from a number of sources, including technical articles (listed in the bibliography below), Knowledge Base articles, and a beta version of the Microsoft® Internet Information Server (IIS) 5.0 documentation (I'm so lucky!).A B C D E F G I J L M O P Q R S T V W X ADOActive Data Objects (ADO) provides a programming model for an OLE-DB data source. It is the database model that ASP uses; however, ASP can use other database access mechanisms. ADO supports the following installable objects, which are often used in ASP files: Command, Connection, Recordset, Field, and Error. Refer to the ADO Web site at /data/ado/ for more information than you can shake a stick at.ApplicationsASP is not just for prototyping. When using ASP as a solution, design your solution as an application instead of designing stand-alone ASP pages. As far as objects are concerned, it's best to take a look at what you need to accomplish and decide what you need, then whether you can buy the objects or will need to create the objects yourself. Take into consideration caching, scalability, reusability, security, and consistency.BottlenecksIdentify your bottlenecks (that is, the database, network card, or network connection) using the tools available: WCAT, NetMon, and performance counters. To improve server performance, take a look at all parts of the system for potential bottlenecks, including hardware configuration and software settings. This way, if you are ever asked to scale the project larger, you will know where the work needs to be done.Browser ConnectionIn IIS 4.0, use the Response.IsClientConnected property to determine if the browser is still connected. If the browser is not connected, you can conserve CPU cycles by ceasing the processing of the ASP page. Refer to the Knowledge Base article Use IsClientConnected to Check if Browser is Connected.BufferingTurn buffering ON. By default it is OFF in IIS 4.0; in IIS 5.0, buffering is ON by default. You should buffer your ASP files so that you can abort sending a Web page. This might happen if the script being processed runs into a problem or if a user does not have appropriate security credentials. If this happens, and if you are using IIS 5.0, you can transfer the user to another page using Server.Transfer, or clear the buffer (using the Clear method of the Response object) to send different content to the user.C++If you are creating page-level components, you can use server scriptlets, Visual Basic®, V isual J++™, and VisualC++®. If you are writing components that will be in application or session state, we recommend that you write them in C++ or Java so you can create them as both-threaded. Visual Basic is apartment-threaded. See the section below on threading for more details.CachingIf your application sends pages to the client via a proxy server, the proxy server may cache pages to return them more quickly to the client. This reduces the load on the network and the Web server. To prevent a browser from caching ASP pages, set Response.Expires to some negative number. This will force the cached pages to expire immediately. If you set Response.Expires to 0, and if your browser clock is behind by a few minutes, the page won't expire immediately. If your Web site contains objects that do not expire often, such as images, set the expiration to some time in the future. This will greatly increase the speed at which a page is refreshed or downloaded. Proxy caching via pragma:nocache is already done for you by IIS, so you don't have to set this in your headers. More information about caching can be found in Got Any Cache?Client-Side ScriptsDistribute the work on your Web site by providing script on both the client and the server. See Client-Side and Server-Side Objects.COM Object DebuggingIf you create a COM object and use it through ASP with Server.CreateObject, you cannot go back into your development environment and recompile the COM DLL without restarting the IIS Admin and W3SVC (Web server) service. Otherwise, the COM DLL will be locked. To restart these services, do the following:1.At a command prompt, type net stop iisadmin /y. Please note that this will shut down IIS' parent service,IIS Admin. This will also shut down FTP and other services that are children of IIS Admin. If you type only net stop w3svc, inetinfo.exe will not be unloaded.2.At a command prompt, type net start w3svc. This will restart IIS Admin and the W3SVC service (Webserver).3.You may recompile at any point after Step 1. Once you refer to an object that loads your DLL, you must repeatStep 1 before building the component successfully.ComponentsUse components to encapsulate the business logic in your ASP applications. You can create your own components or buy them "off the shelf." Once you have a component, you can reuse it wherever you need it. Develop your components using C++ or Java. Because Visual Basic is not marked as both-threaded, you cannot use Visual Basic components within application scope. If you design your own components, be sure to design components that are stateless (that is, the methods you define take parameters, rather than having a script set properties then call the method without the parameters).Stateless components are far more flexible and reusable. In addition, if you have areas in your script where you have more than 100 lines of contiguous script, consider turning that script into a server scriptlet. More information about creating components can be found in the Active Server Components section of the Server area of the MSDN Library.A comprehensive list of third-party components available for ASP can be found in the ASP Component Catalog. ConnectionsPool your connections for optimal performance. By pooling your connections, your resources are allocated more efficiently. For support of multiple logons, provide one connection for read-only access and one connection forread/write access. In general, avoid putting ADO connections in session state. ODBC (version 3.0 and later) automatically does connection pooling for you, and OLE-DB provides session pooling.Cookie MungerASP uses cookies to store the session identifier (ASP SessionID). For machines that have cookies turned off, the Cookie Munger tool can be used to strip out cookies and put the information in a URL. This enables the use of "cookies" without actually sending out cookies. For more information, see Simulating Cookies with the Cookie Munger.CPUDesign for scalability. Stress your ASP applications at 100% CPU to determine how to best allocate your resources. Use WCAT or a third-party tool such as Mercury's LoadRunner to tune your performance.Data Access ComponentsRead Improving the Performance of Data Access Components in IIS 4.0 for a detailed explanation of the techniques that you can use to improve performance.DatabaseUse ADO for adding database access to your Web pages via components. ADO can be used to create small components that connect to any OLE-DB compliant data source, whether it's relational or non-relational. This includes spreadsheets, databases, or e-mail directories.DebuggingThere are many tools available for debugging, including the Microsoft Script Debugger. The Script Debugger lets you run your server-side scripts one line at a time, monitor the value of variables, properties, or array elements during execution, and trace procedures.Important:Once you have finished debugging your Web site, don't forget to turn off debuggingon your live servers. This will increase performance.Dictionary ObjectThe Dictionary object enables you to look up and store arbitrary key-data pairs rapidly. The Dictionary object gives you access to items in the array by key, so it is faster to find things that aren't stored contiguously in memory. Instead, you use a key rather than having to know where in the array the object is stored.Disconnected RecordsetsDisconnecting a Recordset means you can view the Recordset's data after severing the connection to the data store that generated the Recordset. You can create a disconnected ADO Recordset in-process with a Recordset whose CursorLocation property is adUseClient and whose ActiveConnection property is set to NULL/Nothing. You can then put the Recordset into ASP application state and use the Recordset Clone method to share and access the Recordset in your ASP files. You can then pass this Recordset to a remote client using either RDS or DCOM (or both together). Read the Knowledge Base articles HOWTO: Getting ADO Disconnected Recordsets in VBA/C++/Java and INFO: Disconnected Recordsets with ADO or RDS for detailed information.Error HandlingYou can use the ASPError object to obtain information about an IIS 5.0 error condition that has occurred in an ASP file. The ASPError object is returned by the Server.GetLastError method. If the error condition generates an exception and you are using VBScript, use OnErr. In JScript™, use the try…catch method. Detailed information about error handling can be found in the article Microsoft JScript Version 5.0 Adds Exception Handling, by Michael Edwards.Flow ControlFlow control is the ability to set the flow of your ASP application. Flow is controlled through Response methods and two new Server methods (for IIS 5.0). Using Response.Redirect causes posted data to be lost. The Response.End method causes ASP to stop when an error is found. You do not need to call this method after callingResponse.Redirect. The Server.Transfer method is the same as Response.Redirect, except that the work is done on the server and posted data is not lost. The Server.Execute method will flow into a nested ASP call and return execution to where you were before the error occurred.FileSystem ObjectThe FileSystem object blocks on files. If you are running a high-volume Web site, don't use the FileSystem object because the performance of accessing a single file will degrade. If you are using multiple files that are not being accessed at the same time, use of the FileSystem object will not result in a performance hit.Global.asaThe Global.asa file is an optional file in which you can specify event procedures and declare objects that have session or application scope. It is not a content file displayed to the users; it stores event information and objects used globally by the application. This file must be named Global.asa and must be stored in the root directory of the application. An application can have only one Global.asa file. Instead of using the ASP FileSystem object to read files on a page, load the file(s) into an Application level array in Global.asa.GlueUse ASP for the glue and components for the business logic. If you have 100 or more lines of consecutive script, turn it into a component using server scriptlets (bearing in mind that server scriptlets have the same limitations as Visual Basic components).InetLoadThe InetLoad tool can be used to tune your Web site. This tool generates customizable loads on various Internet services, over a broad range of Internet protocols, including HTTP, SMTP, POP3, and LDAP. You can use this tool to simulate traffic on your Web site. InetLoad is available at /software/internet/IN00470.htm. See also WCATW and Mercury LoadRunner for tuning tools.InternationalizationIf you are providing a Web site that will be viewed in countries other than the United States, you can use the CODEPAGE tag within the <% %> delimiters to specify the proper code page. Alternatively, you can use the Session.CodePage property. Read all about it at /library/en-us/dnasp/html/nextgen.asp. In addition to CODEPAGE, you can also use the Local Language Identifier (LCID) to determine the language that the user has set as her preference. Detailed information about LCID can be found in the IMultiLanguage Reference.IsolationYou can separate IIS, ASP, and components into different processes for better performance. The drawback to putting these in different processes is the cross-process communication performance hit. You can put IIS, ASP, and your components in one process. This is the fastest method, but if your component goes down, it can bring down ASP and IIS. You can put IIS in one process and ASP with your components in another so that IIS will not crash if your component or ASP crashes. You can put IIS and ASP in one process and your component in another process. This is slower than the previous option due to all of the cross-process communication; however, it does insulate IIS and ASP from a buggy component. The slowest but "safest" option is to put IIS, ASP, and your components all in separate processes. If one crashes, nothing else will, but the performance will be very, very slow. It's a better idea to test your components really well.Component Configuration Protection SpeedIIS, ASP, and components in one process 1 4IIS in one process, ASP and components in another process 2 3IIS and ASP in one process, components in another process 3 2IIS in one process, ASP in one process, components in one process 4 1Legend: 1 = Least, 4 = MostJavaUse Java (or C++) to write components. Java is a powerful language that you can use to create components that are both-threaded.LoggingYou can turn on URI_Query extended logging to log ASP failures. This is not turned on by default. Turning it on is tricky, so here are the steps:1.Select a Web or FTP site and open its property sheets.2.Enable logging if it is disabled and select the W3C Extended log file format.3.Click Properties.4.On the Extended Properties property sheet, select the fields you want to log (in this instance, URI_Query).By default, Time, Client IP Address, Method, URI Stem, and HTTP Status are enabled.5.Click Apply.You can also log to the Windows NT® Server Event Log; however, logging to the Windows NT Server Event Log is not a good idea if you've got lots of errors or are in debugging mode because you can fill up the log quickly. Using the Windows NT Performance Monitor, you can log a variety of error conditions, including how many ASP requests have failed and how many errors occurred during the script run-time.MailUse Collaboration Data Objects (CDO) to send mail for Windows NT Server. CDO is a lightweight version of CDO for Exchange. It works on SMTP or Exchange. If you are using another e-mail protocol, use a third-party component. A comprehensive list is at /workshop/server/components/catalog.asp.<OBJECT> tagIf you need to refer to objects that may not be used, instantiate them by using the <OBJECT> tag rather than using Server.CreateObject. Using Server.CreateObject causes the object to be created immediately. If you don't use that object later, you end up wasting resources.译文内容介绍什么是ASPASP怎样工作图书目录介绍ASP有很多有用的信息被用在这个网站或者其它网站。

相关主题