Caching and State Management in ASP.NET. speaker: Fritz Onion session: A9
|
|
- Cuthbert Heath
- 7 years ago
- Views:
Transcription
1 Caching and State Management in ASP.NET speaker: Fritz Onion session: A9 1
2 Outline Caching Caching opportunities in ASP.NET Page output caching Page fragment caching Data caching State management Application state Session state Out-of-process session state Database-backed session state 2
3 Caching Caching in Web applications can provide dramatic improvements in performance. ASP.NET provides caching at several levels for you to leverage and improve the responsiveness of your application. 3
4 Caching opportunities in ASP.NET There are two obvious places where caching can improve pageaccess efficiency in ASP.NET Caching a page (or portion of a page) so that the code to generate the page need not be run Caching data from a back-end data source in the worker process to avoid round trips ASP.NET provides features to support both types of caching Page output caching Page fragment caching Data caching 4
5 Caching opportunities in ASP.NET HTTP Request GET /foo/foo.aspx HTTP Response HTTP/ OK... aspnet_ewp.exe (ASP.NET Worker Process) aspnet_eisapi.dll (ASP.NET ISAPI Extension) 1 IHttpHandler Page Class 2 INETINFO.EXE (IIS) 1 Preempt page class execution and return cached version of page (Output caching) Database Server 2 Save round-trips to the database server by caching static data in the data cache 5
6 Output Caching Dynamically generated.aspx pages can be cached for efficiency Instead of re-generating each.aspx page for identical requests, the pages are cached OutputCache directive controls caching duration (in seconds) Can control programmatically using the HttpCachePolicy class Cache used for GET, POST, or HEAD requests if possible Caching of GET requests with query strings or POST requests with bodies controlled by VaryByParam property 6
7 Setting an absolute expiration for retaining a page in the output cache <%@ OutputCache Duration="3600" VaryByParam="none" %> <html> <script language="c#" runat="server"> void Page_Load(Object sender, EventArgs e) { msg.text = DateTime.Now.ToString(); } </script> <body> <h3>output Cache example</font></h3> <p>last generated on: <asp:label id="msg" runat="server"/> </body> </html> 7
8 HttpCachePolicy class public sealed class HttpCachePolicy { public HttpCacheVaryByHeaders VaryByHeaders {get;} public HttpCacheVaryByParams VaryByParams {get;} public void AppendCacheExtension(string extension); public void SetCacheability(HttpCacheability cacheability); public void SetExpires(DateTime date); public void SetLastModified(DateTime date); public void SetMaxAge(TimeSpan delta); public void SetNoServerCaching(); public void SetSlidingExpiration(bool slide); //... } public sealed class HttpResponse { public HttpCachePolicy Cache {get;} //... public class Page :... } { public HttpResponse Response {get;} //... } 8
9 Modiyfing a page's caching policy programmatically <html> <script language="c#" runat="server"> void Page_Load(Object sender, EventArgs e) { Response.Cache.SetExpires(DateTime.Now.AddSeconds(360)); Response.Cache.SetCacheability(HttpCacheability.Public); Response.Cache.SetSlidingExpiration(true); msg.text = DateTime.Now.ToString(); } </script> <body> <h3>output Cache example</font></h3> <p>last generated on: <asp:label id="msg" runat="server"/> </body> </html> 9
10 Caching multiple versions of a page Pages requested using GET with an accompanying query string, or POST with a body must cache multiple versions for correctness VaryByParam property determines how many versions of page are cached Specifying VaryByParam to "none" means that only GET requests with no query strings or POST requests with no body will hit the cache Specifying VaryByParam to "*" means that as many different querystring or POST body requests are received will be cached 10
11 VaryByParam values VaryByParam value none * v1 v1;v2 Description One version of page cached (only raw GET) n versions of page cached based on query string and/or POST body n versions of page cached based on value of v1 variable in query string or POST body n versions of page cached based on value of v1 and v2 variables in query string or POST body <%@ OutputCache Duration="60" VaryByParam="none" %> <%@ OutputCache Duration="60" VaryByParam="*" %> <%@ OutputCache Duration="60" VaryByParam="name;age" %> 11
12 Other cache varying options The OutputCache directive supports several other cache varying options VaryByHeader - maintain separate cache entry for header string changes (UserAgent, UserLanguage, etc.) VaryByControl - for user controls, maintain separate cache entry for properties of a user control VaryByCustom - can specify separate cache entries for browser types and version or provide a custom GetVaryByCustomString method in HttpApplicationderived class 12
13 Page Fragment Caching Portions of a page can be cached as well Must be separated out into a user control OutputCache directive specified in user control file (.ascx) VaryByControl property lets you cache multiple versions of the user control based on control values within the user control Ideal for menus, navigation bars, title bars, or any replicated piece used in multiple pages that changes infrequently 13
14 Page fragment caching MyUserControl.ascx OutputCache Duration="60" VaryByParam="none" %> Control Language=C# %> <script runat=server> protected void Page_Load(Object src, EventArgs e) { m_date.text = "Control generated at " + DateTime.Now.ToString(); } </script> <asp:label id=m_date runat=server /> Client.aspx <%@ Page Language=C# %> <%@ Register TagPrefix="DM" TagName="UserFrag" Src="MyUserControl.ascx" %> <html> <script runat=server> protected void Page_Load(Object src, EventArgs e) { m_pagedate.text = "Page generated at " + DateTime.Now.ToString(); } </script> <body> <DM:UserFrag runat=server /> <br> <asp:label id=m_pagedate runat=server /> </body></html> 14
15 Data Caching ASP.NET provides a full-featured cache engine that can be used by pages to store data across HTTP requests Accessible through Page.Cache property (or HttpContext.Cache) Supports simple dictionary interface for caching values Explicit control over expiration of values possible File and key dependencies can be created using the CacheDependency class Cache is recreated for each application instance Used extensively by HTTP pipeline itself State protected using multi-reader, single-writer lock 15
16 Using the cache Import Namespace="System.Data" %> Import Namespace="System.Data.SqlClient" %> <html> <script language="c#" runat="server"> protected void Page_Load(Object src, EventArgs e) { DataView dv = (DataView)Cache.Get("EmployeesDataView"); if (dv == null) { // wasn't there SqlConnection conn = new SqlConnection("server=localhost;uid=sa;pwd=;database=Test"); SqlDataAdapter da = new SqlDataAdapter("select * from Employees", conn); DataSet ds = new DataSet(); da.fill(ds, "Employees"); dv = ds.tables["employees"].defaultview; Cache.Insert("EmployeesDataView", dv); conn.close(); } else Response.Write("<h2>Loaded employees from data cache!</h2>"); lb1.datasource = dv; lb1.datatextfield = "Name"; lb1.datavaluefield = "Age"; DataBind(); } </script> <body><asp:listbox id="lb1" runat=server /></body> </html> 16
17 Cache entry attributes When adding cache entries, several attributes can be specified Dependencies (on files, directories, or other cache entries) Absolute expiration time Sliding expiration time Relative priority Rate of priority decay Callback function for removal notification 17
18 Setting cache entry attributes <script language=c# runat=server> public void Application_OnStart() { System.IO.StreamReader sr = new System.IO.StreamReader("pi.txt"); string pi = sr.readtoend(); Context.Cache.Add("pi", pi, null, Cache.NoAbsoluteExpiration, CacheItemPriority.NotRemovable, CacheItemPriorityDecay.Never, null); } </script> 18
19 Removing objects from the cache Objects can be explicitly taken out of the cache by calling Remove Cache can remove item implicitly for a variety of reasons Data expiration Memory consumption Low priority data removed first Values marked with Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, CacheItemPriority.NotRemovable, or CacheItemPriorityDecay.Never are never removed Can register for removal notification, including reason 19
20 Using removal notication callback <script language=c# runat=server> public void Application_OnStart() { System.IO.StreamReader sr = new System.IO.StreamReader("pi.txt"); string pi = sr.readtoend(); Context.Cache.Add("pi", pi, null, Cache.NoAbsoluteExpiration, new TimeSpan(0, 5, 0), CacheItemPriorityDecay.Never, new CacheItemReomovedCallback(this.OnRemove)); } public void OnRemove(string key, object val, CacheItemRemovedReason r) { // respond to cache removal here } </script> 20
21 State Management Web programmers must be very state conscious as all communication occurs over an essentially connectionless protocol (HTTP). ASP.NET provides assistance in tracking, storing, and transmitting application state. 21
22 Types of State Web applications must be careful about where state is kept Application State - maintained on an application level, useful for global application settings, best kept read-only (like database connection string) Session State - individual data stored for a given user while interacting with the application (like items in a shopping cart) Cookie State - state maintained by the client browser and passed back with subsequent requests Control State - individual controls on a form need to maintain state for user-interface consistency 22
23 Application State Application state is accessed through the HttpApplication object's Application property Ideally, application state is loaded on Application_Start and then only accessed by pages If concurrent updates to application state may be an issue, protect access by calling Application.Lock() first, matched with a call to Application.Unlock() Not shared across either web-farms or web-gardens For read-only type data, prefer the data cache over Application state 23
24 Sample use of Application state // Inside of global.asax void Application_Start() { DataSet ds = new DataSet(); // population of dataset from ADO.NET query not shown } // Create new dataview based on table and cache DataView view = new DataView(ds.Tables[0]); Application["FooDataView"] = view; // In some page within the application void Page_Load(Object Src, EventArgs E) { DataView Source = (DataView)(Application["FooDataView"]); //... MyDataGrid.DataSource = Source; //... } 24
25 Session State Session state is used to store individual data for a user during page interaction Session state is scoped by a single client session, and is tagged with a unique (and hard to guess) session ID The session ID is transmitted between the client and server using cookies (or munged URLs if cookieless mode is enabled) Accessed through the Session property of a page, which references the current HttpSession object provided by the HTTP runtime State is typically initialized in Session_Start handler in global.asax 25
26 Sample use of Session state // Inside of global.asax void Session_Start() { Session["Age"] = -1; // initialize state } // Inside a page of the application protected void Submit_Click(Object sender, EventArgs E) { Session["Age"] = AgeField.Value; // save age user entered //... } // Inside another page of the application // only let user vote if he/she is over 18 if (Session["Age"] >= 18) VoteButton.Enabled = true; else VoteButton.Enabled = false; 26
27 Issues with session state Session state management problematic in ASP Relies on cookies to track clients (may be disabled) Serializes all requests from a given client Does not survive process shutdown Is not maintained across machines in a web farm/garden Session state management improved in ASP.NET Can avoid relying on cookies to track clients May not serialize all requests from a given client Can configure to survive process shutdown Can configure to work across machines in a web farm/garden 27
28 Configuring Session State The way ASP.NET manages session state for you is configurable The sessionstate section of web.config can be used to configure session state Lets you control things like whether cookies are used to pass the session ID, how long before the session times out, and so on ASP.NET introduces the capability of storing session state transparently in a distinct process (service) potentially on a different machine, or even more appealing, in a database indexed by session ID 28
29 SessionState options Value cookieless mode stateconnectionstring sqlconnectionstring timeout Meaning Pass SessionID via cookies or URL munging? [Off InProc SqlServer StateServer] Server name and port for StateServer Sql connection string for SqlServer state Session state timeout value (minutes) 29
30 web.config file modifying session state configuration <configuration> <system.web> <sessionstate mode="stateserver" stateconnectionstring=" :8081" cookieless="true" timeout="40" /> </system.web> </configuration> 30
31 Tracking clients Session management predicated on associating clients with HTTP request messages No intrinsic support in the protocol HTTP pipeline's session management module supports two techniques, cookies or mangled URLs Controlled by <sessionstate> configuration element's cookieless attribute 31
32 Session key maintained with cookies POST /foo/test.aspx HTTP/1.1 Host: ContentType: text/html ContentLength: nnn Name=Fred... Request Response HTTP/ OK ContentType: text/html ContentLength: nnn Set-Cookie: AspSessionId=xyz; path=/ <html>... 32
33 Session key maintained with URL mangling POST /foo/test.aspx HTTP/1.1 Host: ContentType: text/html ContentLength: nnn Name=Fred... Request Redirect HTTP/ Found Location: POST /xyz/foo/test.aspx HTTP/1.1 Host: ContentType: text/html ContentLength: nnn Name=Fred... Re-request Response HTTP/ OK ContentType: text/html ContentLength: nnn <html>... 33
34 Session key maintenance: cookies vs. mangled URLs Cookies... Are more efficient Are not supported by clients who have disabled them Mangled URLs... Work with clients that don't accept/support cookies Are less efficient Will not work if clients always use absolute URLs 34
35 Storing session state out of process May want session state to survive process restart May want session state to be available from different processes Session state can be stored out of process In local or remote Windows 2000 service In local or remote SQL server Stored as opaque byte stream, can't be worked with in place Roundtrips required to load/store content and to refresh timeout period Roundtrips required to make content durable when client's interactive session ends 35
36 Storing session state out of process aspnet_ewp.exe aspnet_eisapi.dll INETINFO.EXE aspnet_ewp.exe DB Server Server A Server B aspnet_ewp.exe ASPState- TempSessions aspnet_eisapi.dll INETINFO.EXE aspnet_ewp.exe SQL Server 36
37 Roundtrips Session manager uses signaling interfaces to improve performance by avoiding unnecessary roundtrips IReadOnlySessionState causes 1 roundtrip to load IRequiresSessionState causes 2 roundtrips to load/store Neither causes 1 roundtrip to update timeout period Lots of roundtrips cannot be avoided Session manager forced to poll if record is exclusively locked Other data access work involves additional roundtrips 37
38 Indicating session state serialization requirements in Pages foo.aspx Page EnableSessionState="false" %> Generates class foo_aspx : Page {... foo.aspx <%@ Page EnableSessionState="readonly" %> Generates class foo_aspx : Page, IReadOnlySessionState {... (default) foo.aspx <%@ Page EnableSessionState="true" %> Generates class foo_aspx : Page, IRequiresSesssionState {... 38
39 Roundtrips Roundtrip performance often worse than (and never better than) you can do by hand Especially if session content has to be durable anyway Consider filling shopping cart and checking out... If items stored in session, requires 2 roundtrips per item and 3 to checkout rt = 2 * items + 3 If items stored in table, requires 1 roundtrip per item and 1 to checkout rt = items
40 Summary Output caching is effective in reducing dynamic page generation Data caching is useful for localizing data access Application state is useful for storing read-only data within applications Session state can be configured in several different ways with ASP.NET Session state can be tracked using cookies or mangled URLs Session state can be mapped to external storage engines 40
41 Questions 41
ASP.NET Using C# (VS2012)
ASP.NET Using C# (VS2012) This five-day course provides a comprehensive and practical hands-on introduction to developing applications using ASP.NET 4.5 and C#. It includes an introduction to ASP.NET MVC,
More informationPerformance Tuning and Optimizing ASP.NET Applications JEFFREY HASAN WITH KENNETH TU
Performance Tuning and Optimizing ASP.NET Applications JEFFREY HASAN WITH KENNETH TU Performance Tuning and Optimizing ASP.NET Applications Copyright 2003 by Jeffrey Hasan with Kenneth Tu All rights reserved.
More informationProtocolo HTTP. Web and HTTP. HTTP overview. HTTP overview
Web and HTTP Protocolo HTTP Web page consists of objects Object can be HTML file, JPEG image, Java applet, audio file, Web page consists of base HTML-file which includes several referenced objects Each
More informationCustom Error Pages in ASP.NET Prabhu Sunderaraman prabhu@durasoftcorp.com http://www.durasoftcorp.com
Custom Error Pages in ASP.NET Prabhu Sunderaraman prabhu@durasoftcorp.com http://www.durasoftcorp.com Abstract All web applications are prone to throw two kinds of errors, conditional and unconditional.
More informationInternet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)
Internet Technologies World Wide Web (WWW) Proxy Server Network Address Translator (NAT) What is WWW? System of interlinked Hypertext documents Text, Images, Videos, and other multimedia documents navigate
More informationCache Configuration Reference
Sitecore CMS 6.2 Cache Configuration Reference Rev: 2009-11-20 Sitecore CMS 6.2 Cache Configuration Reference Tips and Techniques for Administrators and Developers Table of Contents Chapter 1 Introduction...
More informationmultiple placeholders bound to one definition, 158 page approval not match author/editor rights, 157 problems with, 156 troubleshooting, 156 158
Index A Active Directory Active Directory nested groups, 96 creating user accounts, 67 custom authentication, 66 group members cannot log on, 153 mapping certificates, 65 mapping user to Active Directory
More informationASP Tutorial. Application Handling Part I: 3/15/02
ASP Tutorial Application Handling Part I: 3/15/02 Agenda Managing User Sessions and Applications Section I Groundwork for Web applications Topics: Asp objects, IIS, global.asa Section II Application Objects
More informationAxCMS.net on Network Load Balancing (NLB) Environment
AxCMS.net on Network Load Balancing (NLB) Environment This article contains step-by-step instructions on how to install AxCMS.net PremiumSample on a demo NLB cluster using IIS7. For installing on older
More informationCTIS 256 Web Technologies II. Week # 1 Serkan GENÇ
CTIS 256 Web Technologies II Week # 1 Serkan GENÇ Introduction Aim: to be able to develop web-based applications using PHP (programming language) and mysql(dbms). Internet is a huge network structure connecting
More informationLogi Ad Hoc Reporting Configuration for Load Balancing (Sticky Sessions)
Logi Ad Hoc Reporting Configuration for Load Balancing (Sticky Sessions) Version 10 Last Updated: December 2010 Page 2 Table of Contents About This Paper... 3 What Are Sticky Sessions?... 3 Configuration...
More informationVarnish Tips & Tricks, 2015 edition
Varnish Tips & Tricks, 2015 edition ConFoo 2015 Montreal, Canada Magnus Hagander magnus@hagander.net PRODUCTS CONSULTING APPLICATION MANAGEMENT IT OPERATIONS SUPPORT TRAINING Magnus Hagander Redpill Linpro
More informationInternet Information TE Services 5.0. Training Division, NIC New Delhi
Internet Information TE Services 5.0 Training Division, NIC New Delhi Understanding the Web Technology IIS 5.0 Architecture IIS 5.0 Installation IIS 5.0 Administration IIS 5.0 Security Understanding The
More informationreference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002)
1 cse879-03 2010-03-29 17:23 Kyung-Goo Doh Chapter 3. Web Application Technologies reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002) 1. The HTTP Protocol. HTTP = HyperText
More informationENTERPRISE DATA CENTER APPLICATION DEVELOPMENT GUIDELINES
APPLICATION DEVELOPMENT GUIDELINES Version 1.10 Date: 05/14/2014 SECURITY WARNING The information contained herein is proprietary to the Commonwealth of Pennsylvania and must not be disclosed to un-authorized
More informationOVERVIEW OF ASP. What is ASP. Why ASP
OVERVIEW OF ASP What is ASP Active Server Pages (ASP), Microsoft respond to the Internet/E-Commerce fever, was designed specifically to simplify the process of developing dynamic Web applications. Built
More informationSecurity API Cookbook
Sitecore CMS 6 Security API Cookbook Rev: 2010-08-12 Sitecore CMS 6 Security API Cookbook A Conceptual Overview for CMS Developers Table of Contents Chapter 1 Introduction... 3 Chapter 2 User, Domain,
More informationThis class is intended for experienced software developers who understand object-oriented programming (OOP) and C# or VB.NET.
Objectif is a five-day instructor-led course which begins by introducing the different architectures of ASP.NET Web applications. It then covers the Page class, Web controls, master pages, CSS/Themes,
More informationSitecore Dynamic Links
Sitecore CMS 6.2 or later Sitecore Dynamic Links Rev: 2015-03-04 Sitecore CMS 6.2 or later Sitecore Dynamic Links A Developer's Guide to Constructing URLs with Sitecore Table of Contents Chapter 1 Introduction...
More informationCS640: Introduction to Computer Networks. Applications FTP: The File Transfer Protocol
CS640: Introduction to Computer Networks Aditya Akella Lecture 4 - Application Protocols, Performance Applications FTP: The File Transfer Protocol user at host FTP FTP user client interface local file
More informationUsing NCache for ASP.NET Sessions in Web Farms
Using NCache for ASP.NET Sessions in Web Farms April 22, 2015 Contents 1 Getting Started... 1 1.1 Step 1: Install NCache... 1 1.2 Step 2: Configure for Multiple Network Cards... 1 1.3 Step 3: Configure
More informationRMCS Installation Guide
RESTRICTED RIGHTS Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (C)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS
More informationNetwork Technologies
Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:
More information1 Introduction: Network Applications
1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video
More informationTransition your MCPD Web Developer Skills to MCPD ASP.NET Developer 3.5 (VB)
Transition your MCPD Web Developer Skills to MCPD ASP.NET Developer 3.5 (VB) Course Number: 70-567 UPGRADE Certification Exam 70-567 - UPGRADE: Transition your MCPD Web Developer Skills to MCPD ASP.NET
More informationASP.NET Forms Authentication Best Practices for Software Developers
ASP.NET Forms Authentication Best Practices for Software Developers By Rudolph Araujo, Foundstone Professional Services August 2005 Background ASP.NET does an excellent job of providing out of the box
More informationProof of Concept. A New Data Validation Technique for Microsoft ASP.NET Web Applications. Foundstone Professional Services
Proof of Concept A New Data Validation Technique for Microsoft ASP.NET Web Applications Foundstone Professional Services February 2005 Introduction Despite significant awareness of security issues like
More informationTable of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3
Open-Xchange Authentication & Session Handling Table of Contents 1.Introduction...3 2.System overview/implementation...4 2.1.Overview... 4 2.1.1.Access to IMAP back end services...4 2.1.2.Basic Implementation
More informationWeb Caching With Dynamic Content Abstract When caching is a good idea
Web Caching With Dynamic Content (only first 5 pages included for abstract submission) George Copeland - copeland@austin.ibm.com - (512) 838-0267 Matt McClain - mmcclain@austin.ibm.com - (512) 838-3675
More informationMigrating helpdesk to a new server
Migrating helpdesk to a new server Table of Contents 1. Helpdesk Migration... 2 Configure Virtual Web on IIS 6 Windows 2003 Server:... 2 Role Services required on IIS 7 Windows 2008 / 2012 Server:... 2
More informationExpanded contents. Section 1. Chapter 2. The essence off ASP.NET web programming. An introduction to ASP.NET web programming
TRAINING & REFERENCE murach's web programming with C# 2010 Anne Boehm Joel Murach Va. Mike Murach & Associates, Inc. I J) 1-800-221-5528 (559) 440-9071 Fax: (559) 44(M)963 murachbooks@murach.com www.murach.com
More informationWorking With Virtual Hosts on Pramati Server
Working With Virtual Hosts on Pramati Server 13 Overview Virtual hosting allows a single machine to be addressed by different names. There are two ways for configuring Virtual Hosts. They are: Domain Name
More informationSitecore Health. Christopher Wojciech. netzkern AG. christopher.wojciech@netzkern.de. Sitecore User Group Conference 2015
Sitecore Health Christopher Wojciech netzkern AG christopher.wojciech@netzkern.de Sitecore User Group Conference 2015 1 Hi, % Increase in Page Abondonment 40% 30% 20% 10% 0% 2 sec to 4 2 sec to 6 2 sec
More informationThe full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.
Content Introduction... 2 Data Access Server Control Panel... 2 Running the Sample Client Applications... 4 Sample Applications Code... 7 Server Side Objects... 8 Sample Usage of Server Side Objects...
More informationPresentation Layer: Three different approaches. Database Access Layer: same as above.
Overview of web application development Overview of ASP HTTP request/response processing State management of the script logic Microsoft Scripting Runtime library Remote Scripting Ch 5 - ASP 1 Presentation
More informationChapter 27 Hypertext Transfer Protocol
Chapter 27 Hypertext Transfer Protocol Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/ 27-1 Overview Hypertext language and protocol HTTP messages Browser architecture CGI
More informationHow to test and debug an ASP.NET application
Chapter 4 How to test and debug an ASP.NET application 113 4 How to test and debug an ASP.NET application If you ve done much programming, you know that testing and debugging are often the most difficult
More informationEPiServer Operator's Guide
EPiServer Operator's Guide Abstract This document is mainly intended for administrators and developers that operate EPiServer or want to learn more about EPiServer's operating environment. The document
More informationStreamServe Persuasion SP4 StreamServe Connect for SAP - Business Processes
StreamServe Persuasion SP4 StreamServe Connect for SAP - Business Processes User Guide Rev A StreamServe Persuasion SP4StreamServe Connect for SAP - Business Processes User Guide Rev A SAP, mysap.com,
More informationCMS Performance Tuning Guide
CMS Performance Tuning Guide Rev: 12 February 2013 Sitecore CMS 6.0-6.5 CMS Performance Tuning Guide A developer's guide to optimizing the performance of Sitecore CMS Table of Contents Chapter 1 Introduction...
More informationAnalytics Configuration Reference
Sitecore Online Marketing Suite 1 Analytics Configuration Reference Rev: 2009-10-26 Sitecore Online Marketing Suite 1 Analytics Configuration Reference A Conceptual Overview for Developers and Administrators
More informationIntegrating the F5 BigIP with Blackboard
Integrating the F5 BigIP with Blackboard Nick McClure nickjm@uky.edu Lead Systems Programmer University of Kentucky Created August 1, 2006 Last Updated June 17, 2008 Integrating the F5 BigIP with Blackboard
More informationAPACHE WEB SERVER. Andri Mirzal, PhD N28-439-03
APACHE WEB SERVER Andri Mirzal, PhD N28-439-03 Introduction The Apache is an open source web server software program notable for playing a key role in the initial growth of the World Wide Web Typically
More informationDEPLOYMENT GUIDE Version 1.1. Deploying F5 with IBM WebSphere 7
DEPLOYMENT GUIDE Version 1.1 Deploying F5 with IBM WebSphere 7 Table of Contents Table of Contents Deploying the BIG-IP LTM system and IBM WebSphere Servers Prerequisites and configuration notes...1-1
More information11.1. Performance Monitoring
11.1. Performance Monitoring Windows Reliability and Performance Monitor combines the functionality of the following tools that were previously only available as stand alone: Performance Logs and Alerts
More informationInstructor: Betty O Neil
Introduction to Web Application Development, for CS437/637 Instructor: Betty O Neil 1 Introduction: Internet vs. World Wide Web Internet is an interconnected network of thousands of networks and millions
More informationVisual COBOL ASP.NET Shopping Cart Demonstration
Visual COBOL ASP.NET Shopping Cart Demonstration Overview: The original application that was used as the model for this demonstration was the ASP.NET Commerce Starter Kit (CSVS) demo from Microsoft. The
More informationFree Spider Web development for Free Pascal/Lazarus user's manual
Free Spider Web development for Free Pascal/Lazarus user's manual FreeSpider Version 1.3.3 Modified: 13.Apr.2013 Author: Motaz Abdel Azeem Home Page : http://code-sd.com/freespider License: LGPL Introduction:
More informationWeb. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture #3 2008 3 Apache.
JSP, and JSP, and JSP, and 1 2 Lecture #3 2008 3 JSP, and JSP, and Markup & presentation (HTML, XHTML, CSS etc) Data storage & access (JDBC, XML etc) Network & application protocols (, etc) Programming
More informationASP.NET and Web Forms
ch14.fm Page 587 Wednesday, May 22, 2002 1:38 PM F O U R T E E N ASP.NET and Web Forms 14 An important part of.net is its use in creating Web applications through a technology known as ASP.NET. Far more
More informationHTTP Protocol. Bartosz Walter <Bartek.Walter@man.poznan.pl>
HTTP Protocol Bartosz Walter Agenda Basics Methods Headers Response Codes Cookies Authentication Advanced Features of HTTP 1.1 Internationalization HTTP Basics defined in
More informationDEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5
DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites
More informationhttp://msdn.microsoft.com/en-us/library/4w3ex9c2.aspx
ASP.NET Overview.NET Framework 4 ASP.NET is a unified Web development model that includes the services necessary for you to build enterprise-class Web applications with a minimum of coding. ASP.NET is
More informationGoDaddy (CentriqHosting): Data driven Web Application Deployment
GoDaddy (CentriqHosting): Data driven Web Application Deployment Process Summary There a several steps to deploying an ASP.NET website that includes databases (for membership and/or for site content and
More informationUnit 3: Optimizing Web Application Performance
Unit 3: Optimizing Web Application Performance Contents Overview 1 The Page Scripting Object Model 2 Tracing and Instrumentation in Web Applications 4 ASP.NET 2.0 Caching Techniques 6 Asynchronous Processing
More informationWebSpy Vantage Ultimate 2.2 Web Module Administrators Guide
WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide This document is intended to help you get started using WebSpy Vantage Ultimate and the Web Module. For more detailed information, please see
More informationN-tier ColdFusion scalability. N-tier ColdFusion scalability WebManiacs 2008 Jochem van Dieten
N-tier ColdFusion scalability About me ColdFusion developer for over 10 year Adobe Community Expert for ColdFusion CTO for Prisma IT in the Netherlands consultancy development hosting training Find me
More informationProject #2. CSE 123b Communications Software. HTTP Messages. HTTP Basics. HTTP Request. HTTP Request. Spring 2002. Four parts
CSE 123b Communications Software Spring 2002 Lecture 11: HTTP Stefan Savage Project #2 On the Web page in the next 2 hours Due in two weeks Project reliable transport protocol on top of routing protocol
More informationVB.NET - WEB PROGRAMMING
VB.NET - WEB PROGRAMMING http://www.tutorialspoint.com/vb.net/vb.net_web_programming.htm Copyright tutorialspoint.com A dynamic web application consists of either or both of the following two types of
More informationSingle sign-on for ASP.Net and SharePoint
Single sign-on for ASP.Net and SharePoint Author: Abhinav Maheshwari, 3Pillar Labs Introduction In most organizations using Microsoft platform, there are more than one ASP.Net applications for internal
More informationLecture 11 Web Application Security (part 1)
Lecture 11 Web Application Security (part 1) Computer and Network Security 4th of January 2016 Computer Science and Engineering Department CSE Dep, ACS, UPB Lecture 11, Web Application Security (part 1)
More informationFachgebiet Technische Informatik, Joachim Zumbrägel
Computer Network Lab 2015 Fachgebiet Technische Informatik, Joachim Zumbrägel Overview Internet Internet Protocols Fundamentals about HTTP Communication HTTP-Server, mode of operation Static/Dynamic Webpages
More informationCreating Form Rendering ASP.NET Applications
Creating Form Rendering ASP.NET Applications You can create an ASP.NET application that is able to invoke the Forms service resulting in the ASP.NET application able to render interactive forms to client
More informationSecure Messaging Server Console... 2
Secure Messaging Server Console... 2 Upgrading your PEN Server Console:... 2 Server Console Installation Guide... 2 Prerequisites:... 2 General preparation:... 2 Installing the Server Console... 2 Activating
More informationLearningServer Portal Manager
Overview LearningServer Portal Manager Portal Manager is a web-based, add-on module to LearningServer that allows organizations to create multiple LearningServer web sites. Each site services different
More informationTerms and Definitions for CMS Administrators, Architects, and Developers
Sitecore CMS 6 Glossary Rev. 081028 Sitecore CMS 6 Glossary Terms and Definitions for CMS Administrators, Architects, and Developers Table of Contents Chapter 1 Introduction... 3 1.1 Glossary... 4 Page
More informationOutline Definition of Webserver HTTP Static is no fun Software SSL. Webserver. in a nutshell. Sebastian Hollizeck. June, the 4 th 2013
Definition of in a nutshell June, the 4 th 2013 Definition of Definition of Just another definition So what is it now? Example CGI php comparison log-file Definition of a formal definition Aisaprogramthat,usingthe
More informationTS: Microsoft.NET Framework 3.5, ASP.NET Application Development
Exam : 70-562 Title : TS: Microsoft.NET Framework 3.5, ASP.NET Application Development Version : Demo 1 / 14 1.You create a Microsoft ASP.NET application by using the Microsoft.NET Framework version 3.5.
More informationThe HTTP Plug-in. Table of contents
Table of contents 1 What's it for?... 2 2 Controlling the HTTPPlugin... 2 2.1 Levels of Control... 2 2.2 Importing the HTTPPluginControl...3 2.3 Setting HTTPClient Authorization Module... 3 2.4 Setting
More informationMicrosoft.Realtests.98-363.v2014-08-23.by.ERICA.50q
Microsoft.Realtests.98-363.v2014-08-23.by.ERICA.50q Number: 98-363 Passing Score: 800 Time Limit: 120 min File Version: 26.5 MICROSOFT 98-363 EXAM QUESTIONS & ANSWERS Exam Name: Web Development Fundamentals
More informationClick Studios. Passwordstate. Installation Instructions
Passwordstate Installation Instructions This document and the information controlled therein is the property of Click Studios. It must not be reproduced in whole/part, or otherwise disclosed, without prior
More informationThe Hyper-Text Transfer Protocol (HTTP)
The Hyper-Text Transfer Protocol (HTTP) Antonio Carzaniga Faculty of Informatics University of Lugano October 4, 2011 2005 2007 Antonio Carzaniga 1 HTTP message formats Outline HTTP methods Status codes
More informationNovi Survey Installation & Upgrade Guide
Novi Survey Installation & Upgrade Guide Introduction This procedure documents the step to create a new install of Novi Survey and to upgrade an existing install of Novi Survey. By installing or upgrading
More informationDeveloping a Web Server Platform with SAPI Support for AJAX RPC using JSON
Revista Informatica Economică, nr. 4 (44)/2007 45 Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Iulian ILIE-NEMEDI, Bucharest, Romania, inemedi@ie.ase.ro Writing a custom web
More informationPHP COOKIES, SESSIONS,
PHP COOKIES, SESSIONS, AND SESSION VARIABLES Fall 2009 CSCI 2910 Server Side Web Programming Objectives Understand and use Cookies in PHP scripts. Understand and use Sessions and Session variables in PHP
More informationDescription of Microsoft Internet Information Services (IIS) 5.0 and
Page 1 of 10 Article ID: 318380 - Last Review: July 7, 2008 - Revision: 8.1 Description of Microsoft Internet Information Services (IIS) 5.0 and 6.0 status codes This article was previously published under
More informationOracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Installation and Upgrade Guide for Primavera Portfolio Management 8.0 Copyright 1999-2010, Oracle and/or its affiliates. The Programs (which include both the software and documentation) contain proprietary
More informationDatabase Communica/on in Visual Studio/C# using Web Services. Hans- Pe=er Halvorsen, M.Sc.
Database Communica/on in Visual Studio/C# using Web Services Hans- Pe=er Halvorsen, M.Sc. Background We will use Web Services because we assume that the the App should be used on Internet outside the Firewall).
More informationPerceptive Intelligent Capture Solution Configration Manager
Perceptive Intelligent Capture Solution Configration Manager Installation and Setup Guide Version: 1.0.x Written by: Product Knowledge, R&D Date: February 2016 2015 Lexmark International Technology, S.A.
More informationAdvantage for Windows Copyright 2012 by The Advantage Software Company, Inc. All rights reserved. Client Portal blue Installation Guide v1.
Advantage for Windows Copyright 2012 by The Advantage Software Company, Inc. All rights reserved Client Portal blue Installation Guide v1.1 Overview This document will walk you through the process of installing
More informationLoad Balancing BEA WebLogic Servers with F5 Networks BIG-IP v9
Load Balancing BEA WebLogic Servers with F5 Networks BIG-IP v9 Introducing BIG-IP load balancing for BEA WebLogic Server Configuring the BIG-IP for load balancing WebLogic Servers Introducing BIG-IP load
More informationWeb Application Security Considerations
Web Application Security Considerations Eric Peele, Kevin Gainey International Field Directors & Technology Conference 2006 May 21 24, 2006 RTI International is a trade name of Research Triangle Institute
More informationAdministering Jive for Outlook
Administering Jive for Outlook TOC 2 Contents Administering Jive for Outlook...3 System Requirements...3 Installing the Plugin... 3 Installing the Plugin... 3 Client Installation... 4 Resetting the Binaries...4
More informationConfiguring Claims Based FBA with Active Directory store 1
Configuring Claims Based FBA with Active Directory store 1 Create a new web application in claims based authentication mode 1. From Central Administration, Select Manage Web Applications and then create
More informationContents Release Notes... ... 3 System Requirements... ... 4 Administering Jive for Office... ... 5
Jive for Office TOC 2 Contents Release Notes...3 System Requirements... 4 Administering Jive for Office... 5 Getting Set Up...5 Installing the Extended API JAR File... 5 Updating Client Binaries...5 Client
More informationHTTP 1.1 Web Server and Client
HTTP 1.1 Web Server and Client Finding Feature Information HTTP 1.1 Web Server and Client Last Updated: August 17, 2011 The HTTP 1.1 Web Server and Client feature provides a consistent interface for users
More informationDEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5
DEPLOYMENT GUIDE Version 1.2 Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Microsoft IIS Prerequisites and configuration
More informationConfiguring and Testing Caching and Other Performance Options in Microsoft SharePoint Technologies
Configuring and Testing Caching and Other Performance Options in Microsoft SharePoint Technologies Module Overview The Out of the Box Experience Resources and Tools for Testing IIS Compression Output Caching
More informationCapturx for SharePoint 2.0: Notification Workflows
Capturx for SharePoint 2.0: Notification Workflows 1. Introduction The Capturx for SharePoint Notification Workflow enables customers to be notified whenever items are created or modified on a Capturx
More informationPUTTING THE PIECES OF.NET TOGETHER. Wade Harvey 8/25/2010
PUTTING THE PIECES OF.NET TOGETHER Wade Harvey 8/25/2010 Welcome What are the obstacles? 1. There are a lot of pieces 2. The pieces are scattered out in many different places on the computer 3. Lots of
More informationEngagement Analytics Configuration Reference Guide
Engagement Analytics Configuration Reference Guide Rev: 17 June 2013 Sitecore CMS & DMS 6.6 or later Engagement Analytics Configuration Reference Guide A conceptual overview for developers and administrators
More informationA Java proxy for MS SQL Server Reporting Services
1 of 5 1/10/2005 9:37 PM Advertisement: Support JavaWorld, click here! January 2005 HOME FEATURED TUTORIALS COLUMNS NEWS & REVIEWS FORUM JW RESOURCES ABOUT JW A Java proxy for MS SQL Server Reporting Services
More informationDEPLOYMENT GUIDE Version 2.1. Deploying F5 with Microsoft SharePoint 2010
DEPLOYMENT GUIDE Version 2.1 Deploying F5 with Microsoft SharePoint 2010 Table of Contents Table of Contents Introducing the F5 Deployment Guide for Microsoft SharePoint 2010 Prerequisites and configuration
More informationJim2 ebusiness Framework Installation Notes
Jim2 ebusiness Framework Installation Notes Summary These notes provide details on installing the Happen Business Jim2 ebusiness Framework. This includes ebusiness Service and emeter Reads. Jim2 ebusiness
More informationCOMP 112 Assignment 1: HTTP Servers
COMP 112 Assignment 1: HTTP Servers Lead TA: Jim Mao Based on an assignment from Alva Couch Tufts University Due 11:59 PM September 24, 2015 Introduction In this assignment, you will write a web server
More informationClick Studios. Passwordstate. Upgrade Instructions to V7 from V5.xx
Passwordstate Upgrade Instructions to V7 from V5.xx This document and the information controlled therein is the property of Click Studios. It must not be reproduced in whole/part, or otherwise disclosed,
More informationDEERFIELD.COM. DNS2Go Update API. DNS2Go Update API
DEERFIELD.COM DNS2Go Update API DNS2Go Update API DEERFIELD.COM PRODUCT DOCUMENTATION DNS2Go Update API Deerfield.com 4241 Old U.S. 27 South Gaylord, MI 49686 Phone 989.732.8856 Email sales@deerfield.com
More informationHTTP. Internet Engineering. Fall 2015. Bahador Bakhshi CE & IT Department, Amirkabir University of Technology
HTTP Internet Engineering Fall 2015 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Questions Q1) How do web server and client browser talk to each other? Q1.1) What is the common
More information7 Why Use Perl for CGI?
7 Why Use Perl for CGI? Perl is the de facto standard for CGI programming for a number of reasons, but perhaps the most important are: Socket Support: Perl makes it easy to create programs that interface
More informationGetting Started with Telerik Data Access. Contents
Contents Overview... 3 Product Installation... 3 Building a Domain Model... 5 Database-First (Reverse) Mapping... 5 Creating the Project... 6 Creating Entities From the Database Schema... 7 Model-First
More information