SlideShare a Scribd company logo
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]

More Related Content

What's hot

INTRODUCTION TO IIS
INTRODUCTION TO IISINTRODUCTION TO IIS
INTRODUCTION TO IISsanya6900
 
Understanding iis part1
Understanding iis part1Understanding iis part1
Understanding iis part1
Om Vikram Thapa
 
IIS-Settings
IIS-SettingsIIS-Settings
IIS-Settings
Mindfire Solutions
 
IIS 6.0 and asp.net
IIS 6.0 and asp.netIIS 6.0 and asp.net
IIS 6.0 and asp.net
Rishi Kothari
 
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
Subhas Malik
 
How to Monitor IIS
How to Monitor IISHow to Monitor IIS
How to Monitor IIS
Power Admin LLC
 
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 0Dima Maleev
 
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
Vijay Prasad Gupta
 
Clustering Multiple Instances in Cold Fusion
Clustering Multiple Instances in Cold FusionClustering Multiple Instances in Cold Fusion
Clustering Multiple Instances in Cold Fusion
Mindfire Solutions
 
Web servers
Web serversWeb servers
Web servers
Kuldeep Kulkarni
 
Building Scalable .NET Web Applications
Building Scalable .NET Web ApplicationsBuilding Scalable .NET Web Applications
Building Scalable .NET Web ApplicationsBuu Nguyen
 
I3 - for Web & J2EE
I3 - for Web & J2EEI3 - for Web & J2EE
I3 - for Web & J2EE
sebastian.guerrero
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Securitygeorge.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 websitesoazabir
 
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
Dr. Awase Khirni Syed
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniques
guest8899ec02
 

What's hot (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 to ASP.NET Request Processing Internals

IIS request process
IIS request processIIS request process
IIS request process
Mahbub Hasan
 
ASP.NET 4.0
ASP.NET 4.0ASP.NET 4.0
ASP.NET 4.0XeDotNet
 
Knowledge Sharing : Java Servlet
Knowledge Sharing : Java ServletKnowledge Sharing : Java Servlet
Knowledge Sharing : Java Servlet
Fahmi Jafar
 
SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)
Kashif Imran
 
Asp.Net Ajax Component Development
Asp.Net Ajax Component DevelopmentAsp.Net Ajax Component Development
Asp.Net Ajax Component DevelopmentChui-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
 
Advanced Asp.Net Concepts And Constructs
Advanced Asp.Net Concepts And ConstructsAdvanced Asp.Net Concepts And Constructs
Advanced Asp.Net Concepts And Constructs
Manny Siddiqui MCS, MBA, PMP
 
Bt0083 server side programing
Bt0083 server side programing Bt0083 server side programing
Bt0083 server side programing
Techglyphs
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
Peter Gfader
 
Server side programming
Server side programming Server side programming
Server side programming
javed ahmed
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
slire
 
1 java servlets and jsp
1   java servlets and jsp1   java servlets and jsp
1 java servlets and jsp
Ankit Minocha
 
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
Ivan Sanders
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
Rasel Khan
 

Similar to 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
 

More from Abhijit Jana

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
Abhijit Jana
 
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
Abhijit Jana
 
Effective intellitrace Debugging with VS 11
Effective intellitrace Debugging with VS 11Effective intellitrace Debugging with VS 11
Effective intellitrace Debugging with VS 11
Abhijit Jana
 
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
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 ProfilerAbhijit Jana
 
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
Abhijit Jana
 
Windows azure camp - Kolkata
Windows azure camp - KolkataWindows azure camp - Kolkata
Windows azure camp - Kolkata
Abhijit Jana
 
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
Abhijit Jana
 

More from 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
 

Recently uploaded

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 

Recently uploaded (20)

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 

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