Назад | Перейти на главную страницу

Почему в IIS есть опция «Включить 32-разрядные приложения»?

Насколько я понимаю, все, начиная с IIS7 и выше, может одновременно поддерживать 32- и 64-разрядные приложения ... Так почему же «Включить 32-разрядные приложения» больше не используется с IIS? Почему бы ему автоматически не поддерживать и то, и другое?

Некоторые сторонние компоненты по-прежнему не имеют 64-разрядной версии, и в этом случае для их работы требуется 32-разрядная среда.

Возьмем, к примеру, Excel. Если вы пишете веб-приложение, которое будет выгружать выходные данные в листы Excel, и вам нужно использовать компоненты Microsoft Interop, тогда вам придется работать в 32-битной среде. Или, если у вас есть веб-приложение, которое использует ADO для взаимодействия с Excel, вы также будете работать в 32-разрядной версии.

В ответ на последний бит о том, почему бы не поддерживать автоматическую поддержку обоих (и в сочетании с ответом DJ Pon3), Microsoft активно пытается продвигать чистые 64-битные среды. Имея это в виду, легко понять, что 32-битные параметры будут отключены по умолчанию. Это делает мой пример довольно юмористическим.

Зачем бы вы хотите, чтобы ваша инфраструктура / среда приложения поддерживала то, что, как вы знали, вы не будете использовать? Каждый раз, когда ты не Запуская ненужный код, вы потенциально повышаете производительность за счет использования меньшего количества ресурсов, вы повышаете надежность за счет меньшего количества кода, следовательно, меньше вероятность ошибок, и вы повышаете безопасность, имея меньшее лицо атаки.