SlideShare una empresa de Scribd logo
1 de 23
ASP.NET Request Processing Internals Abhijit Jana Consultant | Microsoft http://abhijitjana.net
Agenda Role of Web Server ASP.NET Request Processing Internals Internal of Web Server Request Processing Request Pipeline Page Life Cycle
Getting Started ,[object Object]
ASP.NET Development Server
WebDev.WebServer20.exe ( CLR 2.0 )
WebDev.WebServer40.exe  (CLR 4.0 )
ASP.NET Development Server Runs on Specific Port,[object Object]
Moving to IIS Process Request (w3wp.exe) Request Response
Key Concept Application Pool Worker Process Web Farm Web Garden IIS Application Pool Application Pool Application Pool Worker Process Worker Process Worker Process w3wp Web Application 1 Web Application 2 Web Application 3 Web Application 4
Application Pool and HTTP.SYS IIS Application Pool Application Pool Application Pool W3wp.exe W3wp.exe W3wp.exe HTTP.SYS ApplicationHost.Config
Demo
Protocol Listener [ HTTP.SYS ] Protocol Listener is the part of Kernel Level of IIS Protocol listeners receive protocol-specific requests send them to IIS for processing return responses to requestors It the Kernel mode Protocol stack which listens to the HTTP and HTTPSRequest Kernel-mode caching Kernel Mode Queuing
WWW service and WAS Part of User Level of IIS World Wide Web Publishing Service (WWW service) and Windows Process Activation Service (WAS) run as Local System in the same Svchost.exe process Performance Monitoring Processing Monitoring Configuration Management Svchost.exe Windows Process Activation Service (WAS) World Wide Web Publishing Service (WWW service) HTTP.SYS
Overall View Of IIS Application Pool ApplicationHost.Config Svchost.exe World Wide Web Publishing Service (WWW service) Windows Process Activation Service (WAS) HTTP.SYS
Looking bit Inside of Request Processing HTTP Module HTTP Module IIS HTTP Module Application Pool Application Pool Svchost.exe Application Pool W3wp.exe W3wp.exe W3wp.exe WWW service WAS HTTP Module HTTP Module HTTP.SYS HTTP Handler HTTP Handler
Request Processing Continue.. ,[object Object]
HTTP.sys Interacts with WWW Publishing Services  and sync with the related configuration stored in applicationHost.config.
The WWW Service receives configuration  like application pool, virtual directory, site details from applcationHost.config
WWW Publishing Services gets the request from Http.Sys and passed to WAS
WAS starts a worker process for the application pool  associated with the request was made.
Workerprocess execute ASP.NET Internals operations
The worker process processes returns a response to HTTP.sys.
The client receives a response from Server.,[object Object]

Más contenido relacionado

La actualidad más candente

INTRODUCTION TO IIS
INTRODUCTION TO IISINTRODUCTION TO IIS
INTRODUCTION TO IIS
sanya6900
 
New Features Of ASP.Net 4 0
New Features Of ASP.Net 4 0New Features Of ASP.Net 4 0
New Features Of ASP.Net 4 0
Dima Maleev
 
Building Scalable .NET Web Applications
Building Scalable .NET Web ApplicationsBuilding Scalable .NET Web Applications
Building Scalable .NET Web Applications
Buu Nguyen
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
george.james
 
10 performance and scalability secrets of ASP.NET websites
10 performance and scalability secrets of ASP.NET websites10 performance and scalability secrets of ASP.NET websites
10 performance and scalability secrets of ASP.NET websites
oazabir
 

La actualidad más candente (20)

INTRODUCTION TO IIS
INTRODUCTION TO IISINTRODUCTION TO IIS
INTRODUCTION TO IIS
 
Understanding iis part1
Understanding iis part1Understanding iis part1
Understanding iis part1
 
Web303
Web303Web303
Web303
 
IIS-Settings
IIS-SettingsIIS-Settings
IIS-Settings
 
IIS 6.0 and asp.net
IIS 6.0 and asp.netIIS 6.0 and asp.net
IIS 6.0 and asp.net
 
The complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide showThe complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide show
 
How to Monitor IIS
How to Monitor IISHow to Monitor IIS
How to Monitor IIS
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 
New Features Of ASP.Net 4 0
New Features Of ASP.Net 4 0New Features Of ASP.Net 4 0
New Features Of ASP.Net 4 0
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
2009 - Microsoft IIS Vs. Apache - Who Serves More - A Study
2009 - Microsoft IIS Vs. Apache - Who Serves More - A Study2009 - Microsoft IIS Vs. Apache - Who Serves More - A Study
2009 - Microsoft IIS Vs. Apache - Who Serves More - A Study
 
Clustering Multiple Instances in Cold Fusion
Clustering Multiple Instances in Cold FusionClustering Multiple Instances in Cold Fusion
Clustering Multiple Instances in Cold Fusion
 
Web servers
Web serversWeb servers
Web servers
 
Building Scalable .NET Web Applications
Building Scalable .NET Web ApplicationsBuilding Scalable .NET Web Applications
Building Scalable .NET Web Applications
 
I3 - for Web & J2EE
I3 - for Web & J2EEI3 - for Web & J2EE
I3 - for Web & J2EE
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
 
10 performance and scalability secrets of ASP.NET websites
10 performance and scalability secrets of ASP.NET websites10 performance and scalability secrets of ASP.NET websites
10 performance and scalability secrets of ASP.NET websites
 
Apache ppt
Apache pptApache ppt
Apache ppt
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENTC# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENT
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniques
 

Similar a ASP.NET Request Processing Internals

ASP.NET 4.0
ASP.NET 4.0ASP.NET 4.0
ASP.NET 4.0
XeDotNet
 
Asp.Net Ajax Component Development
Asp.Net Ajax Component DevelopmentAsp.Net Ajax Component Development
Asp.Net Ajax Component Development
Chui-Wen Chiu
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
teach4uin
 

Similar a ASP.NET Request Processing Internals (20)

Philly Tech Fest Iis
Philly Tech Fest IisPhilly Tech Fest Iis
Philly Tech Fest Iis
 
IIS request process
IIS request processIIS request process
IIS request process
 
ASP.NET 4.0
ASP.NET 4.0ASP.NET 4.0
ASP.NET 4.0
 
Knowledge Sharing : Java Servlet
Knowledge Sharing : Java ServletKnowledge Sharing : Java Servlet
Knowledge Sharing : Java Servlet
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
 
SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)
 
Web servers
Web serversWeb servers
Web servers
 
Asp.Net Ajax Component Development
Asp.Net Ajax Component DevelopmentAsp.Net Ajax Component Development
Asp.Net Ajax Component Development
 
Day7
Day7Day7
Day7
 
Webconnection
WebconnectionWebconnection
Webconnection
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
 
Servlet 01
Servlet 01Servlet 01
Servlet 01
 
Advanced Asp.Net Concepts And Constructs
Advanced Asp.Net Concepts And ConstructsAdvanced Asp.Net Concepts And Constructs
Advanced Asp.Net Concepts And Constructs
 
Bt0083 server side programing
Bt0083 server side programing Bt0083 server side programing
Bt0083 server side programing
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
Server side programming
Server side programming Server side programming
Server side programming
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
 
1 java servlets and jsp
1   java servlets and jsp1   java servlets and jsp
1 java servlets and jsp
 
Developer application lifecycle process and tools - v.5
Developer application lifecycle process and tools - v.5Developer application lifecycle process and tools - v.5
Developer application lifecycle process and tools - v.5
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 

Más de Abhijit Jana

Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 ProfilerTune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
Abhijit Jana
 

Más de Abhijit Jana (8)

Application Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applicationsApplication Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applications
 
A lap around visual studio 2015 and c sharp
A lap around visual studio 2015 and c sharpA lap around visual studio 2015 and c sharp
A lap around visual studio 2015 and c sharp
 
Effective intellitrace Debugging with VS 11
Effective intellitrace Debugging with VS 11Effective intellitrace Debugging with VS 11
Effective intellitrace Debugging with VS 11
 
A lap around ASP.NET 4.5 and Visual Studio 2011 Developer Preview
A lap around ASP.NET 4.5 and Visual Studio 2011 Developer Preview A lap around ASP.NET 4.5 and Visual Studio 2011 Developer Preview
A lap around ASP.NET 4.5 and Visual Studio 2011 Developer Preview
 
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 ProfilerTune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
 
What's new in vs 2010 sp1 for web developers
What's new in vs 2010 sp1 for web developersWhat's new in vs 2010 sp1 for web developers
What's new in vs 2010 sp1 for web developers
 
Windows azure camp - Kolkata
Windows azure camp - KolkataWindows azure camp - Kolkata
Windows azure camp - Kolkata
 
Caching Enhancement in ASP.NET 4.0
Caching Enhancement in ASP.NET 4.0Caching Enhancement in ASP.NET 4.0
Caching Enhancement in ASP.NET 4.0
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

ASP.NET Request Processing Internals

  • 1. ASP.NET Request Processing Internals Abhijit Jana Consultant | Microsoft http://abhijitjana.net
  • 2. Agenda Role of Web Server ASP.NET Request Processing Internals Internal of Web Server Request Processing Request Pipeline Page Life Cycle
  • 3.
  • 7.
  • 8. Moving to IIS Process Request (w3wp.exe) Request Response
  • 9. Key Concept Application Pool Worker Process Web Farm Web Garden IIS Application Pool Application Pool Application Pool Worker Process Worker Process Worker Process w3wp Web Application 1 Web Application 2 Web Application 3 Web Application 4
  • 10. Application Pool and HTTP.SYS IIS Application Pool Application Pool Application Pool W3wp.exe W3wp.exe W3wp.exe HTTP.SYS ApplicationHost.Config
  • 11. Demo
  • 12. Protocol Listener [ HTTP.SYS ] Protocol Listener is the part of Kernel Level of IIS Protocol listeners receive protocol-specific requests send them to IIS for processing return responses to requestors It the Kernel mode Protocol stack which listens to the HTTP and HTTPSRequest Kernel-mode caching Kernel Mode Queuing
  • 13. WWW service and WAS Part of User Level of IIS World Wide Web Publishing Service (WWW service) and Windows Process Activation Service (WAS) run as Local System in the same Svchost.exe process Performance Monitoring Processing Monitoring Configuration Management Svchost.exe Windows Process Activation Service (WAS) World Wide Web Publishing Service (WWW service) HTTP.SYS
  • 14. Overall View Of IIS Application Pool ApplicationHost.Config Svchost.exe World Wide Web Publishing Service (WWW service) Windows Process Activation Service (WAS) HTTP.SYS
  • 15. Looking bit Inside of Request Processing HTTP Module HTTP Module IIS HTTP Module Application Pool Application Pool Svchost.exe Application Pool W3wp.exe W3wp.exe W3wp.exe WWW service WAS HTTP Module HTTP Module HTTP.SYS HTTP Handler HTTP Handler
  • 16.
  • 17. HTTP.sys Interacts with WWW Publishing Services and sync with the related configuration stored in applicationHost.config.
  • 18. The WWW Service receives configuration like application pool, virtual directory, site details from applcationHost.config
  • 19. WWW Publishing Services gets the request from Http.Sys and passed to WAS
  • 20. WAS starts a worker process for the application pool associated with the request was made.
  • 21. Workerprocess execute ASP.NET Internals operations
  • 22. The worker process processes returns a response to HTTP.sys.
  • 23.
  • 24. Demo
  • 25. Inside Worker Process (w3wp.exe) cond.. W3wp.exe Web Server Core Modules BeginRequest BasicAuthenticationModule Authentication HttpCacheModule Authorization StaticCompressionModule Cache Resolution DynamicStaticCompressionModule Handler URL Authorization Release State Tracing Update Log HTTP Error End Request Processing HTTP Logging
  • 26.
  • 27. Plug-in / out modules you want on the server or Application Specific.
  • 28. customize a server to a specific role in your environment.
  • 29. custom modules to replace existing modules or to introduce new features based on application on server specific
  • 30. Content Module ( IsapiFilter ,IsapiFilterModule )
  • 31. Security Module (BasicAuthenticationModule )
  • 32. Caching Module ( HttpCacheModule)
  • 33. Compression Module ( StaticCompressionModule )HTTP Module HTTP Module HTTP Module HTTP Module HTTP Module HTTP Handler HTTP Handler
  • 34. ASP.NET Routing W3wp.exe Web Server Core BeginRequest Authentication Routing Module Authorization Cache Resolution Handler IHandler Release State Update Log End Request Processing
  • 35. Once done with HTTP Pipeline Page_PreInit Page_Init ASP.NET Page Life Cycle Load View State Load Post Back Data Page_Load Page Post back event Pre Render Save View State Render Unload
  • 37.
  • 38. IIS URL Rewriting and ASP.NET Routing
  • 39. IIS 7.0 Request Filtering and URL Rewriting
  • 40.
  • 41. Thank You ! Abhijit Jana Blog : http://abhijitjana.net http://dailydotnettips.com Twitter : @AbhijitJana