IIS7: AppDomain is not recycled when necessary?

received a strange question for you based on some strange events on our website. We have four .DLLs in our ASP.Net solution (i.e., managed code in the / bin folder). This morning we updated all four of them, the site was tested and worked fine.

This afternoon . I downloaded a new version of one DLL, and the whole site was omitted, much to my disappointment. I quickly changed the new one for the old one, returning the site back to state before I loaded the DLL, but the site was still down. We were forced to restart the entire server, but still joy: as far as we know, the site was returned in exactly the same state as it was before I loaded something, and it still did not work.

So, after a little research, we found that it was an error in one of the DLLs that was loaded in the morning (i.e. not related to the DLLs that I loaded in the afternoon),

What we discovered was that for some odd reason, AppDomain wasn’t disposed of correctly when we loaded our libraries in the morning. Some of the changes made to the site went live, but at least one of the DLLs remained in the cache instead of updating.

When I unloaded the DLL later that day, it caused a reboot of AppDomain, which then included a listening DLL, which was loaded this morning.

Has anyone else had a problem with the fact that AppDomain is not recycled when necessary? Or maybe there is another explanation for what it might be? AFAIK AppDomain should be recycled every time you make changes to any file in bin / folder ... If so, how did it accidentally fix the old version of the file and not process it correctly?

AppDomain: http://weblogs.asp.net/owscott/archive/2006/02/21/ASP.NET-v2.0-2D00-AppDomain-recycles_2C00_--, -before.aspx

+3
1

, , IIS , , , .

, , IISRESET . , .

+1

Source: https://habr.com/ru/post/1735047/


All Articles