Re: Thank you and goodbye Mr Peter Morris
- From: "Shawn B." <leabre@xxxxxxxx>
- Date: Mon, 5 Nov 2007 10:59:13 -0800
Unloading assemblies is not an issue for me. I load them when the app
starts, I create instances of classes within it as needed, when finished I
Dispose of those instances.
This is pretty much what I do, but that's because of the predictability of
my software and/or components that use plugins. It is enough for me to
close the application and copy or register the new plugin version and load
the application again. For websites, its even easier to just reset IIS.
For dev, resetting IIS is fine, for QA and production, this happens on a
schedule when everything is updated so resetting happens anyway.
I have only encountered one time the absolute need to load plugins into
AppDomains. The reason is because it was a custom service controller and if
a service went bonkers then the self-healing mechanism could kick in and
kill the appdomain without killing the other services that were loaded into
the host. The other reason is since the "servlets" would be deployed to any
number of hundreds of servers to data centers around the country to serve
the web application (an insurance application) we wanted the ability to
publish updates dynamically without interference: The old version would
continue to finish processing any existing requests and once the new servlet
was loaded into its appdomain, it would simultaneously take all new requests
and when the older version finished it would unload. In this respect we had
zero down time and were able to process hundreds of millions of transactions
daily. But for most uses that I've encountered, dynamic unloading of
assemblies has not been a concern but I'm also not targeting end users. My
tablature editor on the other hand, must support the feature.
There's a good book that discusses this in depth: "Customizing the .NET
Framework Common Language Runtime". Great book. "CLR via C#" 2nd Edition
also gives some good insight into ancillary concerns. Most of what you'll
find in the Customizing the .NET Framework CLR book is not easily
googleable; and what you do find via google is fragmented or not complete.
Thanks,
Shawn
.
- References:
- Thank you and goodbye Mr Peter Morris
- From: Lachlan Gemmell
- Re: Thank you and goodbye Mr Peter Morris
- From: Chau Chee Yang
- Re: Thank you and goodbye Mr Peter Morris
- From: Dave Nottage [TeamB]
- Re: Thank you and goodbye Mr Peter Morris
- From: Peter Morris
- Thank you and goodbye Mr Peter Morris
- Prev by Date: Re: Another lemon to suck on
- Next by Date: Re: GSSAPI
- Previous by thread: Re: Thank you and goodbye Mr Peter Morris
- Next by thread: Re: Thank you and goodbye Mr Peter Morris
- Index(es):
Relevant Pages
|