Explain in-proc,out-proc and sql server.
Answers were Sorted based on User's Feedback
Answer / 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 |
Answer / vimal
in-proc-----session kept as a live object in the web server
sql server---session serialized and stored in sql server(in
tempdb)
Is This Answer Correct ? | 36 Yes | 15 No |
Answer / ranjana tyagi
Inproc- In this the information(session) is stored in
aspnet_wp.exe.Which is lost when the application is closed.
Outproc-outproc statemanagement are state server and sql
server.
sql server- the session is stored in sql server.
state server-The session is stored in aspnet_state.exe.
Is This Answer Correct ? | 20 Yes | 7 No |
Answer / manoj bhatt
in proc-by default the session mode is in proc,the session
object is maintained in the current application domain or we
can say in the web server memory
advantage-fast,easy to use
disadvantage-not support web garden,server restart session lose
out proc-here we maintain the session in any external source
like sql server or aspnet_state.exe
advantage-session data is not lose,when server
reboot,support web garden
dis-hard to implement,require serial,deserialization
Is This Answer Correct ? | 5 Yes | 2 No |
Explain 'managed' mean in the .NET context
What should one do to make class serializable?
What is MS chart control in visual studio?
So what exactly is the configuration file for then?
Difference between type constructor and instance constructor?
What does the "EnableViewState" property do? Why would I want it on or off?
What is the difference between metadata and menifest ?
how can we achieve language interoperability through CLS? How MSIL works?
Explain the race around condition? : .NET Architecture
What is the numeric attribute of the textbox control in .net mobile? : Microsoft dot net mobile
Explain how does .net mobile work? : Microsoft dot net mobile
readonly syntax ?