У нас есть wsps в нашем проекте. Но всякий раз, когда разворачивается wsp, страница «Недоступная служба» приходит на уровне сайта. Есть ли способ, которым несколько DLL могут быть добавлены в GAC без простоя на рабочем сервере?Развертывание в SharePoint без времени простоя
ответ
Нет ответа в реальности. Когда вы выполняете развертывание с помощью WSP, сбрасывается, так что последние dll перезагружаются и очищают память в пулах приложений.
Так что все, что связано с кодом на стороне сервера, потребует сброса.
Если вы обновляете что-либо в улье, вы можете уйти с нулевым временем простоя.
Существует более глубокий ответ here, чтобы, когда вы нуждаетесь в IISReset
Приветствия Truez
Это технически возможно сделать локальное развертывание и этап это самостоятельно. Install-SPSolution предлагает локальный коммутатор. Вы могли бы теоретически использовать это и контролировать ротацию развертывания (предполагая более одного сервера). но, как указано выше, чтобы IIS перезагружать сборки, требуется, чтобы пул приложений был циклически включен. Ассембли загружаются из GAC, но затем сохраняются.
https://blog.ithinksharepoint.com/2012/07/16/deploying-sharepoint-wsp-solutions-without-downtime/
Я пробовал несколько раз, и не очень успешной, поэтому пробег может варьироваться.
Если вы зависимы от GACed Assembly, вы можете технически вытолкнуть их самостоятельно вне WSP. Однако вы можете оказаться в странном месте, так как может произойти следующее: 1) Вы удаляете веб-приложение со всех серверов (это также отвлечет решение). Вы можете в итоге ничего не потерять или осиротевшие сборки в GAC 2) Вы добавляете сервер позже, и он принимает пакет развертывания, и у вас есть сервер с другим набором бит в вашей ферме. Это больно для устранения неполадок для всех. Представьте, если вы ушли? 3) Вы развертываете сборку, и она отличается от версии вашего веб-сайта, и она не может быть использована или найдена.