Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...Keepalive solutionsKeepalive solutions
Previous
 
Next
New Post
12/20/2008 12:44 AM
 

I was looking for a Keep-Alive functionality for my Portals, and stumbled upon this thread. I might be wrong, but in my knowing, all people are assuming here that separate Portals running on the same physical DNN installation should require Keep-Alive functionality for only one of the Portals, if the Portals are running under the same App Pool.

Now, App-Pool is an IIS concept. But what you people need to recognize is that there is another master entity involved in addition to IIS, that is ASP.NET & the .NET Framework. It is true that only a single instance of .NET Framework libraries is loaded up in memory for all Applications running inside the same App Pool. But from there on, the story iis different.

ASP.NET isolates each Application into its own App Domain even if they are using the same Code & libraries. Thus, each application has its own App Domain inside the same App Pool (if they are sharing the App Pool). And all resources required by an application except the Framework libraries are loaded per App Domain. Thus separate loading of same assemblies would be required for 2 different App Domains.

Coming to the DNN perspective, you create a web-application for each Portal separately. Thus, each Portal gets its own App Domain. Now, even if they share the App Pool, the DNN libraries (that you consider are being shared by the Portals) are NOT really shared in-memory. They are isolated into their own App Domains, and hence each Portal would reuiqre loading them separately.

Thus each Portal would have its own start-up time, which implies you need a keep-alive solution for each Portal separately, even if they run off the same physical DNN installation. You can also check out the following for more information:

blogs.msdn.com/david.wang/archive/2005/09/01/HOWTO-Provision-ASP-dotNet-AppDomains-and-IIS6-Application-Pools.aspx

www.odetocode.com/articles/305.aspx

Sebastian Leupold wrote

Generally the best solution is to configure IIS App pool recycle according to DNN needs (not to recycle after 20 mins of inactivity)

Now, coming to the above quote, Sebastian most DNN Portals are third party hosted. And the Hosting provider would be (and should be) running multiple client applications under the same App Pool. So, how could they allow you to set the App Pool recycle time according to a single client's needs???

 
New Post
12/24/2008 1:01 PM
 

r_honey,

Just to clarify.  If the setup is with one website in IIS, and you are not using virtual directories but host headers to support multiple "parent" portals in DNN, then this would be a case where there is one application running multiple portals (multiple domains), and therefore, I believe one keep alive is sufficient.   (the separation is handled by DNN alone).   agree?

I believe that you are speaking of configurations where someone has virtual directories under one website using the same install and application pool, or when you have multiple websites in IIS setup over the same install and using the same application pools.  These configurations utilize more resources than the first example I give above.


Terence
TMMworld Dot Net Services
View Terence Maney's profile on LinkedIn
 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...Keepalive solutionsKeepalive solutions


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out