Веб-сады ... они хорошие или плохие или как?

28

Есть ли недостатки в предоставлении пулам приложений нескольких рабочих процессов в IIS? Кажется, что их действительно легко включить, и (почти) все, что я прочитал, говорит о том, что они хороши ... так почему же IIS не дает каждому пулу приложений более 10 рабочих процессов? Должны быть некоторые вредные эффекты, верно?

Най
источник

Ответы:

36

Вы правы, чтобы быть подозрительным. Веб-сады, у которых нет недостатков, - огромный миф, они могут создать вам бесконечные проблемы, но многие люди до сих пор даже не знают, когда их следует использовать.

По словам Криса Адамса (из команды IIS), есть только одна причина, по которой вы хотели бы использовать веб-сад: дать приложениям, которые не привязаны к процессору, но выполняют долго выполняющиеся запросы, возможность масштабировать и не использовать все потоки, доступные в рабочем процессе. Есть много причин, почему они могут быть плохими, однако, это распространенное заблуждение, что нет никаких недостатков.

Они увеличивают системные издержки (они не разделяют кеш), они не разделяют сессии (пользователь может потерять свою сессию, если они переключены на другой процесс), InProc может испортиться. Короче говоря, они на самом деле, чаще всего, много проблем, и вы не должны использовать один без уважительной причины.

Прочитайте полное объяснение Криса: http://blogs.iis.net/chrisad/archive/2006/07/14/1342059.aspx

Дополнительное чтение: http://weblogs.asp.net/owscott/why-you-shouldn-t-use-web-gardens-in-iis-week-24

Джанго Рейнхардт
источник
5
Хорошо сказано, как и сообщение Криса. Веб-сады почти никогда не нужны. Один процесс на сервер - это все, что требуется в 99,5% времени. У меня были возможности протестировать веб-сады на серверах с высокой нагрузкой, которые не работали хорошо, и мы никогда не оставляли их включенными в конце. Мы всегда находили лучшие решения. Только для задач с низким ресурсом, которые помогают. Их использование имеет больший объем памяти и проблемы с непрерывностью сеанса. Хотя это можно обойти, это редко требуется.
Скотт Форсайт - MVP
Страшно, что во многих текстах никогда не упоминаются их недостатки - даже на собственном веб-сайте Microsoft есть такие страницы.
Джанго Рейнхардт
7
В большинстве случаев все хорошо, если не рассматривать веб-сады. НО проблемы СЕССИИ? Я имею в виду, только если вы настроены на InProc. Теперь вы не будете использовать InProc в производстве, верно ?!
Андрей Ринея
@AndreiRinea Удивительно, как мало кто знает, что есть альтернативы InProc ..
Гатс
1
Хотя это, безусловно, лучший ответ, сейчас единственная информация, которую я могу найти, когда использовать веб-сад, - это точная цитата в этом ответе (т. Е. «... приложения, которые не связаны с процессором…» «). Проблема для меня в том, что я не знаю, что означают некоторые из этих терминов. Возможно, это означает, что я не должен играть с этим, но я системный администратор, а не разработчик, и иногда разработчики тоже не знают об этом. Так что было бы неплохо более полное объяснение того, что означает эта цитата
Тодд Уилкокс