Explain in-proc,out-proc and sql server.
Answer Posted / sajid
In case of InProc, state is maintained within the managed
memory of the ASP.NET process whereas in case of OutProc
mode session is managed by an external resource (
StateServer or SQL Server )
In case of InProc, state is maintained within the managed
memory of the ASP.NET process whereas in case of OutProc
mode session is managed by an external resource (
StateServer or SQL Server )
This EggheadCafe article -
http://www.eggheadcafe.com/articles/20021016.asp has a good
comparison
Storage location
* InProc - session kept as live objects in web server
(aspnet_wp.exe). Use "cookieless" configuration in
web.config to "munge" the sessionId onto the URL (solves
cookie/domain/path RFC problems too!)
* StateServer - session serialized and stored in memory
in a separate process (aspnet_state.exe). State Server can
run on another machine
* SQLServer - session serialized and stored in SQL server
Performance
* InProc - Fastest, but the more session data, the more
memory is consumed on the web server, and that can affect
performance.
* StateServer - When storing data of basic types (e.g.
string, integer, etc), in one test environment it's 15%
slower than InProc. However, the cost of
serialization/deserialization can affect performance if
you're storing lots
of objects. You have to do performance testing for
your own scenario.
* SQLServer - When storing data of basic types (e.g.
string, integer, etc), in one test environment it's 25%
slower than InProc. Same warning about serialization as in
StateServer.
Robustness
* InProc - Session state will be lost if the worker
process (aspnet_wp.exe) recycles, or if the appdomain
restarts. It's because session state is stored in the memory
space of an appdomain. For details, see KB324772.
* StateServer - Solve the session state loss problem in
InProc mode. Allows a webfarm to store session on a central
server. Single point of failure at the State Server.
* SQLServer - Similar to StateServer. Moreover, session
state data can survive a SQL server restart, and you can
also take advantage of SQL server failover cluster, after
you've followed instructions in KB 311029.
| Is This Answer Correct ? | 73 Yes | 2 No |
Post New Answer View All Answers
How to improve the cache performance? : Dot net architecture
When do I need to use gc.keepalive?
What is code access security (cas)?
Explain the purpose of cache? How is it used? : .NET Architecture
Explain the difference between primary & secondary storage device? : .NET Architecture
What is the procedure on hardware that converts the ascii value to binary? : .NET Architecture
What are the five stages in a dlx pipeline? : Dot net architecture
Whats new features in Visual Studio 2012?
what is the method while we are using adapter and dataset ?
What is the difference between primary & secondary storage device? : Dot net architecture
What is the purpose of Accordian in jquery? Where it can be used?
5. Wcf- Session Managment
What is cache coherency and how is it eliminated? : Dot net architecture
What is .net mobile utility controls. : Microsoft dot net mobile
Explain the process of gc?