DLL-библиотеки совместного использования пула приложений IIS 6.0 - PullRequest
0 голосов
/ 10 апреля 2009

У меня есть 10+ приложений, которые находятся в одном пуле приложений. Все эти приложения имеют некоторые общие библиотеки, которые они все загружают. Проблема в том, что эти библиотеки помещаются в папку «\ bin» для каждого приложения. Итак, каждое приложение; даже если он использует dll_a, в конечном итоге он загрузит свою собственную «копию» dll_a.

У меня есть несколько вопросов 1) Это нормально? 2) Должен ли я поместить dll_a в какую-то общую папку и сделать, чтобы все приложения ссылались на одну копию? 3. Загружает ли каждый рабочий процесс, обслуживающий эти приложения, несколько копий dll_a по разным путям, даже если они в основном одинаковые dll?

1 Ответ

2 голосов
/ 10 апреля 2009

1) Это нормально? - да, это нормально.

2) Должен ли я поместить dll_a в какую-то общую папку и сделать, чтобы все приложения ссылались на одну копию? -- Ты можешь, если ты хочешь. Проблема, с которой вы столкнетесь, заключается в том, что если вам когда-нибудь понадобится приложение, использующее другую версию DLL, все остальные должны будут обновить (или понизить). Если развертывание не является проблемой для управления библиотекой, я бы хотел дать им свою собственную копию. У нас есть довольно автоматизированный процесс, в котором я работаю, поэтому синхронизировать вещи, когда они должны быть, здесь довольно тривиально.

3) Загружает ли каждый рабочий процесс, обслуживающий эти приложения, несколько копий dll_a с разных путей, даже если они в основном являются одной и той же dll? - Да, каждый процесс будет иметь свою копию на dll. Каждое приложение работает в своем собственном пространстве памяти, поэтому, хотя технически они используют одно и то же, каждое из них будет иметь его копию в памяти.

...