Ограничения iis windows 10

Содержание
  1. Ограничения iis windows 10
  2. Диспетчер служб iis в windows 10
  3. Установить IIS 8.5 через powershell
  4. Настройка IIS 10.0 Tuning IIS 10.0
  5. Параметры режима ядра Kernel-mode settings
  6. Параметры управления кэшем Cache management settings
  7. Параметры управления запросами и соединениями Request and connection management settings
  8. Параметры пользовательского режима User-mode settings
  9. Идеальный параметр ЦП для оборудования NUMA Ideal CPU setting for NUMA hardware
  10. Параметры поведения кэша пользовательского режима User-mode cache behavior settings
  11. Параметры поведения сжатия Compression behavior settings
  12. Настройка списка документов по умолчанию Tuning the default document list
  13. Централизованное ведение журнала в двоичном формате Central binary logging
  14. Настройки приложений и сайтов Application and site tunings
  15. Управление модулями IIS 10,0 Managing IIS 10.0 modules
  16. Параметры классической модели ASP Classic ASP settings
  17. Параметр параллелизма ASP.NET ASP.NET concurrency setting
  18. ASP.NET 3.5 ASP.NET 3.5
  19. ASP.NET 4,6 ASP.NET 4.6
  20. Параметры рабочего процесса и повторного запуска Worker process and recycling options
  21. Динамическая настройка рабочего процесса рабочей роли Dynamic worker-process page-out tuning
  22. Параметры настройки безопасности транспортного уровня Transport Layer Security tuning parameters
  23. Серверный интерфейс прикладного программирования (ISAPI) Internet Server Application Programming Interface (ISAPI)
  24. Рекомендации по настройке управляемого кода Managed code tuning guidelines
  25. Другие проблемы, влияющие на производительность IIS Other issues that affect IIS performance

Ограничения iis windows 10

Добрый день, в прошлый раз я вам рассказал, как отключить Internet Information Services и мы в этом разобрались, теперь же я хотел вернуться к клиентской версии операционной системы, а именно к Windows 10 Creators Update и другие редакции, многие из пользователей не предполагают, что еще со времен Windows 7, ее можно превратить в настоящий веб-сервер, на той же службе IIS и создавать на ней свои сайты, такой аля хостинг, как в Европе. Сегодня я вам покажу, как установить iis на windows 10 за минуту, вы поймете, что это реально просто и дешевле, чем покупать серверную версию.

Диспетчер служб iis в windows 10

Итак, службы iis в windows 10 по умолчанию, находятся в выключенном состоянии, а точнее, данный компонент не установлен из коробки, сделано это специально, чтобы не тратились ресурсы компьютера и лишние сокеты не крутились на нем. Чтобы нам добавить нужный компонент, сделайте вот что. Нажмите сочетание клавиш Win+R и введите в окне выполнить:

В результате чего у вас откроется панель управления Windows. Сделаем в ней представление значков в формате «Крупные значки»

Далее находим пункт «Программы и компоненты»

Переходим в пункт «Включение или отключение компонентов Windows», мы с вами это уже делали, устанавливая telnet клиент

Находим среди множества пунктов «Службы Интернета», ставим на против них галку и нажимаем ок. У вас начинается установка IIS windows 10.

Компонент веб сервер IIS, будет добавлен в считанные секунды, после чего я вам советую перезагрузить вашу операционную систему Windows 10.

Как и писал выше, перезапустим систему.

Кстати, как только вы все установили, перед запуском не поленитесь поискать свежие обновления в центре обновления Windows, так как могут быть свежие заплатки. Теперь смотрите, как вы можете теперь открыть диспетчер IIS. Есть несколько способов, первый, нажмите WIN+R и введите inetMgr. У вас откроется нужная оснастка.

Второй метод, это открыть кнопку пуск и в папке «Средства администрирования» найдите «Диспетчер служб IIS»

Вот так вот выглядит оснастка. Далее я вам советую почитать, про создание сайтов.

Установить IIS 8.5 через powershell

Настройка IIS 10.0 Tuning IIS 10.0

Службы IIS (IIS) 10,0 входит в состав Windows Server 2016. Internet Information Services (IIS) 10.0 is included with Windows Server 2016. В нем используется модель процессов, аналогичная версии IIS 8,5 и IIS 7,0. It uses a process model similar to that of IIS 8.5 and IIS 7.0. Веб-драйвер режима ядра (http.sys) получает и маршрутизирует HTTP-запросы, а также выполняет запросы из кэша ответов. A kernel-mode web driver (http.sys) receives and routes HTTP requests, and satisfies requests from its response cache. Рабочие процессы регистрируются для подпространств URL-адресов, а http.sys направляет запрос в соответствующий процесс (или набор процессов для пулов приложений). Worker processes register for URL subspaces, and http.sys routes the request to the appropriate process (or set of processes for application pools).

HTTP.sys отвечает за управление подключениями и обработку запросов. HTTP.sys is responsible for connection management and request handling. Запрос может быть обслужен из HTTP.sys кэша или передан рабочему процессу для дальнейшей обработки. The request can be served from the HTTP.sys cache or passed to a worker process for further handling. Можно настроить несколько рабочих процессов, что обеспечивает изоляцию по сниженным затратам. Multiple worker processes can be configured, which provides isolation at a reduced cost. Дополнительные сведения о том, как работает обработка запросов, см. на следующем рисунке. For more info on how request handling works, see the following figure:

HTTP.sys включает кэш ответов. HTTP.sys includes a response cache. Если запрос соответствует записи в кэше ответа, HTTP.sys отправляет ответ кэша непосредственно из режима ядра. When a request matches an entry in the response cache, HTTP.sys sends the cache response directly from kernel mode. Некоторые платформы веб-приложений, такие как ASP.NET, предоставляют механизмы, позволяющие кэшировать любое динамическое содержимое в кэше в режиме ядра. Some web application platforms, such as ASP.NET, provide mechanisms to enable any dynamic content to be cached in the kernel-mode cache. Обработчик статических файлов в IIS 10,0 автоматически кэширует часто запрашиваемые файлы в http.sys. The static file handler in IIS 10.0 automatically caches frequently requested files in http.sys.

Поскольку веб-сервер имеет компоненты режима ядра и пользовательского режима, оба компонента должны быть настроены для оптимальной производительности. Because a web server has kernel-mode and user-mode components, both components must be tuned for optimal performance. Поэтому Настройка IIS 10,0 для конкретной рабочей нагрузки включает в себя настройку следующих параметров: Therefore, tuning IIS 10.0 for a specific workload includes configuring the following:

HTTP.sys и связанный кэш режима ядра HTTP.sys and the associated kernel-mode cache

Рабочие процессы и IIS в пользовательском режиме, включая конфигурацию пула приложений. Worker processes and user-mode IIS, including the application pool configuration

Некоторые параметры настройки, влияющие на производительность Certain tuning parameters that affect performance

В следующих разделах описывается настройка аспектов служб IIS 10,0 в режиме ядра и в пользовательском режиме. The following sections discuss how to configure the kernel-mode and user-mode aspects of IIS 10.0.

Параметры режима ядра Kernel-mode settings

Параметры HTTP.sys, связанные с производительностью, делятся на две основные категории: Управление кэшем, подключение и управление запросами. Performance-related HTTP.sys settings fall into two broad categories: cache management and connection and request management. Все параметры реестра хранятся в следующей записи реестра: All registry settings are stored under the following registry entry:

Примечание . Если служба HTTP уже запущена, необходимо перезапустить ее, чтобы изменения вступили в силу. Note If the HTTP service is already running, you must restart it for the changes to take effect.

Параметры управления кэшем Cache management settings

Одним из преимуществ, предоставляемых HTTP.sys, является кэш режима ядра. One benefit that HTTP.sys provides is a kernel-mode cache. Если ответ находится в кэше режима ядра, запрос HTTP можно полностью удовлетворить с помощью режима ядра, что значительно снижает стоимость ЦП при обработке запроса. If the response is in the kernel-mode cache, you can satisfy an HTTP request entirely from the kernel mode, which significantly lowers the CPU cost of handling the request. Однако кэш служб IIS 10,0 в режиме ядра основан на физической памяти, а стоимость записи — это объем памяти, который она занимает. However, the kernel-mode cache of IIS 10.0 is based on physical memory, and the cost of an entry is the memory that it occupies.

Запись в кэше полезна только при использовании. An entry in the cache is helpful only when it is used. Однако запись всегда потребляет физическую память независимо от того, используется ли запись. However, the entry always consumes physical memory, whether or not the entry is being used. Необходимо оценить полезность элемента в кэше (экономию от возможности его обслуживания из кэша) и затраты (занимаемая физической памятью) в течение времени существования записи, учитывая доступные ресурсы (ЦП и физическая память) и требования к рабочей нагрузке. You must evaluate the usefulness of an item in the cache (the savings from being able to serve it from the cache) and its cost (the physical memory occupied) over the lifetime of the entry by considering the available resources (CPU and physical memory) and the workload requirements. HTTP.sys пытается использовать в кэше только полезные, активно доступные элементы, но можно повысить производительность веб-сервера, настроив кэш HTTP.sys для определенных рабочих нагрузок. HTTP.sys tries to keep only useful, actively accessed items in the cache, but you can increase the performance of the web server by tuning the HTTP.sys cache for particular workloads.

Ниже приведены некоторые полезные параметры для HTTP.sys кэша режима ядра. The following are some useful settings for the HTTP.sys kernel-mode cache:

Уриенаблекаче Значение по умолчанию: 1 UriEnableCache Default value: 1

Ненулевое значение включает ответ в режиме ядра и кэширование фрагментов. A non-zero value enables the kernel-mode response and fragment caching. Для большинства рабочих нагрузок кэш должен оставаться включенным. For most workloads, the cache should remain enabled. Рекомендуется отключить кэш, если предполагается очень низкий отклик и кэширование фрагментов. Consider disabling the cache if you expect a very low response and fragment caching.

Уримакскачемегабитекаунт Значение по умолчанию: 0 UriMaxCacheMegabyteCount Default value: 0

Ненулевое значение, указывающее максимальный объем памяти, доступный кэшу режима ядра. A non-zero value that specifies the maximum memory that is available to the kernel-mode cache. Значение по умолчанию 0 позволяет системе автоматически настраивать объем памяти, доступной для кэша. The default value, 0, enables the system to automatically adjust how much memory is available to the cache.

Примечание . Задание размера устанавливает только максимальное значение, и система может не дорастить размер кэша до максимального размера. Note Specifying the size sets only the maximum, and the system might not let the cache grow to the maximum set size.

Уримаксурибитес Значение по умолчанию: 262144 байт (256 КБ) UriMaxUriBytes Default value: 262144 bytes (256 KB)

Максимальный размер записи в кэше режима ядра. The maximum size of an entry in the kernel-mode cache. Ответы или фрагменты, превышающие этот, не кэшируются. Responses or fragments larger than this are not cached. При наличии достаточного объема памяти рекомендуется увеличить это ограничение. If you have enough memory, consider increasing the limit. Если память ограничена, а большие записи кровдинг меньше, может оказаться полезным уменьшить это ограничение. If memory is limited and large entries are crowding out smaller ones, it might be helpful to lower the limit.

Урискавенжерпериод Значение по умолчанию: 120 с UriScavengerPeriod Default value: 120 seconds

Кэш HTTP.sys периодически сканируется средством очистки, а записи, к которым нет доступа между сканированием очистки, удаляются. The HTTP.sys cache is periodically scanned by a scavenger, and entries that are not accessed between scavenger scans are removed. Установка для периода очистки большого значения сокращает число просмотров очистки. Setting the scavenger period to a high value reduces the number of scavenger scans. Однако использование памяти кэша может увеличиться из-за более старых, менее часто запрашиваемых записей может остаться в кэше. However, the cache memory usage might increase because older, less frequently accessed entries can remain in the cache. Установка слишком низкого периода приводит к более частому сканированию очистки и может привести к чрезмерному увеличению количества операций очистки и кэширования. Setting the period too low causes more frequent scavenger scans, and it can result in too many flushes and cache churn.

Параметры управления запросами и соединениями Request and connection management settings

В Windows Server 2016 HTTP.sys управляет подключениями автоматически. In Windows Server 2016, HTTP.sys manages connections automatically. Следующие параметры реестра больше не используются: The following registry settings are no longer used:

MaxConnections MaxConnections

идлеконнектионшигхмарк IdleConnectionsHighMark

идлеконнектионсловмарк IdleConnectionsLowMark

идлелисттриммерпериод IdleListTrimmerPeriod

рекуестбуфферлукасидедепс RequestBufferLookasideDepth

интерналрекуестлукасидедепс InternalRequestLookasideDepth

Параметры пользовательского режима User-mode settings

Параметры в этом разделе влияют на поведение рабочего процесса ИИСÂ 10,0. The settings in this section affect the IISÂ 10.0 worker process behavior. Большинство этих параметров можно найти в следующем XML-файле конфигурации: Most of these settings can be found in the following XML configuration file:

% SystemRoot% \ system32 \ inetsrv \ config \applicationHost.config %SystemRoot%\system32\inetsrv\config\applicationHost.config

Используйте Appcmd.exe, консоль управления IIS 10,0, командлеты Иисадминистратион или PowerShell для изменения. Use Appcmd.exe, the IIS 10.0 Management Console, the WebAdministration or IISAdministration PowerShell Cmdlets to change them. Большинство параметров обнаруживаются автоматически и не требует перезапуска рабочих процессов IIS 10,0 или сервера веб-приложений. Most settings are automatically detected, and they do not require a restart of the IIS 10.0 worker processes or web application server. Дополнительные сведения о applicationHost.config файле см. в разделе Общие сведения о ApplicationHost.config. For more info about the applicationHost.config file, see Introduction to ApplicationHost.config.

Идеальный параметр ЦП для оборудования NUMA Ideal CPU setting for NUMA hardware

Начиная с Windows 2016, IIS 10,0 поддерживает автоматическое идеальное назначение ЦП для потоков пула потоков, чтобы повысить производительность и масштабируемость оборудования NUMA. Starting from Windows 2016, IIS 10.0 supports automatic ideal CPU assignment for its thread pool threads to enhance the performance and scalability on NUMA hardware. Эта функция включена по умолчанию и может быть настроена с помощью следующего раздела реестра: This feature is enabled by default and can be configured through the following registry key:

Если эта функция включена, диспетчер потоков IIS предоставляет лучшие усилия для равномерного распределения потоков пула потоков IIS по всем ЦП во всех узлах NUMA на основе их текущих нагрузок. With this feature enabled, IIS thread manager makes its best effort to evenly distribute IIS thread pool threads across all CPUs in all NUMA nodes based on their current loads. Как правило, рекомендуется не изменять этот параметр по умолчанию для оборудования NUMA. In general, it is recommended to keep this default setting unchanged for NUMA hardware.

Примечание . Идеальный параметр ЦП отличается от параметров назначения узла для рабочего процесса NUMA (Нуманодеассигнмент и Нуманодеаффинитимоде), введенных в параметрах ЦП для пула приложений. Note The ideal CPU setting is different from the worker process NUMA node assignment settings (numaNodeAssignment and numaNodeAffinityMode) introduced in CPU Settings for an Application Pool. Идеальный параметр ЦП влияет на то, как IIS распространяет потоки пула потоков, а параметры назначения узлов NUMA рабочего процесса определяют, на каком узле NUMA запускается рабочий процесс. The ideal CPU setting affects how IIS distributes its thread pool threads, while the worker process NUMA node assignment settings determine on which NUMA node a worker process starts.

Параметры поведения кэша пользовательского режима User-mode cache behavior settings

В этом разделе описываются параметры, влияющие на поведение кэширования в ИИСÂ 10,0. This section describes the settings that affect caching behavior in IISÂ 10.0. Кэш пользовательского режима реализуется как модуль, который прослушивает события глобального кэширования, создаваемые интегрированным конвейером. The user-mode cache is implemented as a module that listens to the global caching events that are raised by the integrated pipeline. Чтобы полностью отключить кэш пользовательского режима, удалите модуль Филекачемодуле (cachfile.dll) из списка установленных модулей в applicationHost.config разделе конфигурации System. глобалмодулес или. To completely disable the user-mode cache, remove the FileCacheModule (cachfile.dll) module from the list of installed modules in the system.webServer/globalModules configuration section in applicationHost.config.

Читайте также:  Change file name linux

System .ING Server/Caching system.webServer/caching

attribute Attribute Описание Description По умолчанию Default
Активировано Enabled Отключает кэш IIS пользовательского режима при установке значения false. Disables the user-mode IIS cache when set to False. Если коэффициент попадания в кэш очень мал, можно полностью отключить кэш, чтобы избежать издержек, связанных с путем к коду кэша. When the cache hit rate is very small, you can disable the cache completely to avoid the overhead that is associated with the cache code path. Отключение кэша пользовательского режима не отключает кэш режима ядра. Disabling the user-mode cache does not disable the kernel-mode cache. Верно True
енаблекернелкаче enableKernelCache Отключает кэш режима ядра при установке значения false. Disables the kernel-mode cache when set to False. Верно True
макскачесизе maxCacheSize Ограничивает размер кэша пользовательского режима IIS указанным размером в мегабайтах. Limits the IIS user-mode cache size to the specified size in Megabytes. Службы IIS настраивают значение по умолчанию в зависимости от доступной памяти. IIS adjusts the default depending on available memory. Тщательно выбирайте значение в зависимости от размера набора часто используемых файлов по сравнению с объемом ОЗУ или адресным пространством процесса IIS. Choose the value carefully based on the size of the set of frequently accessed files versus the amount of RAM or the IIS process address space. 0 0
максреспонсесизе maxResponseSize Кэширует файлы вплоть до указанного размера. Caches files up to the specified size. Фактическое значение зависит от числа и размера самого большого файла в наборе данных, а также от объема доступной оперативной памяти. The actual value depends on the number and size of the largest files in the data set versus the available RAM. Кэширование больших и часто запрашиваемых файлов может снизить загрузку ЦП, доступ к диску и связанные с ними задержки. Caching large, frequently requested files can reduce CPU usage, disk access, and associated latencies. 262144 262144

Параметры поведения сжатия Compression behavior settings

IIS, начиная с 7,0, по умолчанию сжимает статическое содержимое. IIS starting from 7.0 compresses static content by default. Кроме того, сжатие динамического содержимого включается по умолчанию при установке Динамиккомпрессионмодуле. Also, compression of dynamic content is enabled by default when the DynamicCompressionModule is installed. Сжатие сокращает использование пропускной способности, но увеличивает загрузку ЦП. Compression reduces bandwidth usage but increases CPU usage. Если это возможно, сжатое содержимое кэшируется в кэше режима ядра. Compressed content is cached in the kernel-mode cache if possible. Начиная с 8,5, службы IIS позволяют управлять сжатием независимо для статического и динамического содержимого. Starting from 8.5, IIS lets compression be controlled independently for static and dynamic content. Статическое содержимое обычно относится к содержимому, которое не изменяется, например GIF-или HTM-файлы. Static content typically refers to content that does not change, such as GIF or HTM files. Динамическое содержимое обычно создается скриптами или кодом на сервере, то есть ASP.NET страницами. Dynamic content is typically generated by scripts or code on the server, that is, ASP.NET pages. Классификацию любого конкретного расширения можно настроить как статический или динамический. You can customize the classification of any particular extension as static or dynamic.

Чтобы полностью отключить сжатие, удалите Статиккомпрессионмодуле и Динамиккомпрессионмодуле из списка модулей в разделе System./Глобалмодулес в applicationHost.config. To completely disable compression, remove StaticCompressionModule and DynamicCompressionModule from the list of modules in the system.webServer/globalModules section in applicationHost.config.

System. Хттпкомпрессион/ system.webServer/httpCompression

attribute Attribute Описание Description По умолчанию Default
Статиккомпрессион — Енаблекпуусаже staticCompression-EnableCpuUsage

Статиккомпрессион — Дисаблекпуусаже staticCompression-DisableCpuUsage

Динамиккомпрессион — Енаблекпуусаже dynamicCompression-EnableCpuUsage

Динамиккомпрессион — Дисаблекпуусаже dynamicCompression-DisableCpuUsage

Включает или отключает сжатие, если текущая процентная загрузка ЦП превышает или ниже указанных пределов. Enables or disables compression if the current percentage CPU usage goes above or below specified limits.

Начиная с IIS 7,0, сжатие автоматически отключается, если ЦП стабильного состояния превышает пороговое значение отключения. Starting with IIS 7.0, compression is automatically disabled if steady-state CPU increases above the disable threshold. Сжатие включается, если ЦП падает ниже порога включения. Compression is enabled if CPU drops below the enable threshold.

50, 100, 50 и 90 соответственно 50, 100, 50, and 90 respectively
directory. directory Указывает каталог, в котором временно хранятся и кэшируются сжатые версии статических файлов. Specifies the directory in which compressed versions of static files are temporarily stored and cached. Рекомендуется переместить этот каталог на системный диск, если к нему часто обращаются. Consider moving this directory off the system drive if it is accessed frequently. %SystemDrive%\inetpub\temp\IIS Temporary Compressed Files %SystemDrive%\inetpub\temp\IIS Temporary Compressed Files
додискспацелимитинг doDiskSpaceLimiting Указывает, существует ли ограничение на количество места на диске, которое может занимать все сжатые файлы. Specifies whether a limit exists for how much disk space all compressed files can occupy. Сжатые файлы хранятся в каталоге сжатия, указанном атрибутом Directory . Compressed files are stored in the compression directory that is specified by the directory attribute. Верно True
максдискспацеусаже maxDiskSpaceUsage Указывает число байтов дискового пространства, которое может занимать сжатые файлы в каталоге сжатия. Specifies the number of bytes of disk space that compressed files can occupy in the compression directory.

Этот параметр может потребоваться увеличиться, если общий размер всех сжатых содержимого слишком велик. This setting might need to be increased if the total size of all compressed content is too large.

100 МБ 100 MB

System. urlCompression/ system.webServer/urlCompression

attribute Attribute Описание Description По умолчанию Default
достатиккомпрессион doStaticCompression Указывает, следует ли сжимать статическое содержимое. Specifies whether static content is compressed. Верно True
додинамиккомпрессион doDynamicCompression Указывает, следует ли сжимать динамическое содержимое. Specifies whether dynamic content is compressed. Верно True

Для серверов, использующих IIS 10,0 с низкой средней загрузкой ЦП, рассмотрите возможность включения сжатия для динамического содержимого, особенно если ответы велики. For servers running IIS 10.0 that have low average CPU usage, consider enabling compression for dynamic content, especially if responses are large. Сначала следует сделать это в тестовой среде, чтобы оценить воздействие на загрузку ЦП из базовых показателей. This should first be done in a test environment to assess the effect on the CPU usage from the baseline.

Настройка списка документов по умолчанию Tuning the default document list

Модуль документов по умолчанию обрабатывает HTTP-запросы к корню каталога и преобразует их в запросы для определенного файла, например Default.htm или Index.htm. The default document module handles HTTP requests for the root of a directory and translates them into requests for a specific file, such as Default.htm or Index.htm. В среднем Араундâ 25% всех запросов в Интернете проходит по пути к документу по умолчанию. On average, around 25 percent of all requests on the Internet go through the default document path. Это существенно различается для отдельных сайтов. This varies significantly for individual sites. Если HTTP-запрос не указывает имя файла, модуль документов по умолчанию выполняет поиск по списку допустимых документов по умолчанию для каждого имени в файловой системе. When an HTTP request does not specify a file name, the default document module searches the list of allowed default documents for each name in the file system. Это может негативно сказаться на производительности, особенно если достижение содержимого требует приема сетевого пути или прикосновения к диску. This can adversely affect performance, especially if reaching the content requires making a network round trip or touching a disk.

Можно избежать дополнительной нагрузки путем выборочного отключения документов по умолчанию, а также путем уменьшения или упорядочения списка документов. You can avoid the overhead by selectively disabling default documents and by reducing or ordering the list of documents. Для веб-сайтов, использующих документ по умолчанию, следует сократить список до используемых типов документов по умолчанию. For websites that use a default document, you should reduce the list to only the default document types that are used. Кроме того, следует упорядочить список, чтобы он начинался с наиболее часто запрашиваемого имени файла документа по умолчанию. Additionally, order the list so that it begins with the most frequently accessed default document file name.

Можно выборочно задать поведение документа по умолчанию для определенных URL-адресов, настроив конфигурацию внутри тега location в applicationHost.config или путем вставки web.config файла непосредственно в каталог содержимого. You can selectively set the default document behavior on particular URLs by customizing the configuration inside a location tag in applicationHost.config or by inserting a web.config file directly in the content directory. Это позволяет применять гибридный подход, который позволяет документам по умолчанию только там, где это необходимо, и присваивает списку правильное имя файла для каждого URL-адреса. This allows a hybrid approach, which enables default documents only where they are necessary and sets the list to the correct file name for each URL.

Чтобы полностью отключить документы по умолчанию, удалите Дефаултдокументмодуле из списка модулей в разделе System./Глобалмодулес в applicationHost.config. To disable default documents completely, remove DefaultDocumentModule from the list of modules in the system.webServer/globalModules section in applicationHost.config.

System. Server/defaultDocument system.webServer/defaultDocument

attribute Attribute Описание Description По умолчанию Default
Включено enabled Указывает, что документы по умолчанию включены. Specifies that default documents are enabled. Верно True
Элемент element Указывает имена файлов, которые настроены в качестве документов по умолчанию. Specifies the file names that are configured as default documents. Список по умолчанию — Default.htm, Default. ASP, Index.htm, Index.html, Iisstart.htm и Default. aspx. The default list is Default.htm, Default.asp, Index.htm, Index.html, Iisstart.htm, and Default.aspx.

Централизованное ведение журнала в двоичном формате Central binary logging

Когда сеанс сервера содержит несколько групп URL-адресов, процесс создания сотен форматированных файлов журналов для отдельных групп URL-адресов и записи данных журнала на диск может быстро потреблять ценные ресурсы ЦП и памяти, тем самым создавая проблемы с производительностью и масштабируемостью. When the server session has numerous URL groups under it, the process of creating hundreds of formatted log files for individual URL groups and writing the log data to a disk can quickly consume valuable CPU and memory resources, thereby creating performance and scalability issues. Централизованное ведение журнала в двоичном формате уменьшает объем системных ресурсов, используемых для ведения журнала, в то же время предоставляя подробные данные журналов для организаций, которым он необходим. Centralized binary logging minimizes the amount of system resources that are used for logging, while at the same time providing detailed log data for organizations that require it. Для анализа журналов в двоичном формате требуется средство последующей обработки. Parsing binary-format logs requires a post-processing tool.

Вы можете включить централизованное ведение журнала в двоичном формате, установив для атрибута Централлогфилемоде значение Централбинари и установив для атрибута Enabled значение true. You can enable central binary logging by setting the centralLogFileMode attribute to CentralBinary and setting the enabled attribute to True. Рассмотрите возможность перемещения центрального файла журнала из системного раздела и на выделенный диск журнала, чтобы избежать конфликтов между действиями системы и действиями ведения журнала. Consider moving the location of the central log file off the system partition and onto a dedicated logging drive to avoid contention between system activities and logging activities.

System. applicationHost/журнал system.applicationHost/log

attribute Attribute Описание Description По умолчанию Default
централлогфилемоде centralLogFileMode Задает режим ведения журнала для сервера. Specifies the logging mode for a server. Измените это значение на Централбинари, чтобы включить централизованное ведение журнала в двоичном формате. Change this value to CentralBinary to enable central binary logging. Сайт Site

System. applicationHost/log/Централбинарилогфиле system.applicationHost/log/centralBinaryLogFile

attribute Attribute Описание Description По умолчанию Default
Включено enabled Указывает, включено ли централизованное ведение журнала в двоичном формате. Specifies whether central binary logging is enabled. Неверно False
directory. directory Указывает каталог, в который записываются записи журнала. Specifies the directory where log entries are written. %системдриве%\инетпуб\логс\логфилес %SystemDrive%\inetpub\logs\LogFiles

Настройки приложений и сайтов Application and site tunings

Следующие параметры относятся к настройкам пула приложений и сайта. The following settings relate to application pool and site tunings.

System. applicationHost/Аппликатионпулс/Аппликатионпулдефаултс system.applicationHost/applicationPools/applicationPoolDefaults

attribute Attribute Описание Description По умолчанию Default
queueLength queueLength Указывает HTTP.sys количество запросов в очереди для пула приложений до отклонения будущих запросов. Indicates to HTTP.sys how many requests are queued for an application pool before future requests are rejected. При превышении значения этого свойства IIS отклоняет последующие запросы с ошибкой 503. When the value for this property is exceeded, IIS rejects subsequent requests with a 503 error.

Попробуйте увеличить это для приложений, взаимодействующих с серверными хранилищами данных с высокой задержкой, если наблюдаются ошибки 503. Consider increasing this for applications that communicate with high-latency back-end data stores if 503 errors are observed.

1000 1000
enable32BitAppOnWin64 enable32BitAppOnWin64 Если значение — true, позволяет запускать 32-разрядное приложение на компьютере с 64-разрядным процессором. When True, enables a 32-bit application to run on a computer that has a 64-bit processor.

Рассмотрите возможность включения 32-разрядного режима, если использование памяти является важным фактором. Consider enabling 32-bit mode if memory consumption is a concern. Так как размеры указателей и размеры команд меньше, 32-разрядные приложения используют меньше памяти, чем 64-разрядные приложения. Because pointer sizes and instruction sizes are smaller, 32-bit applications use less memory than 64-bit applications. Недостаток выполнения 32-разрядных приложений на 64-разрядном компьютере состоит в том, что адресное пространство пользовательского режима ограничено 4 ГБ. The drawback to running 32-bit applications on a 64-bit computer is that user-mode address space is limited to 4 GB.

Неверно False

System. applicationHost/Sites/Виртуалдиректоридефаулт system.applicationHost/sites/VirtualDirectoryDefault

attribute Attribute Описание Description По умолчанию Default
алловсубдирконфиг allowSubDirConfig Указывает, будет ли IIS искать web.configные файлы в каталогах содержимого ниже текущего уровня (true) или не искать файлы web.config в каталогах содержимого ниже текущего уровня (false). Specifies whether IIS looks for web.config files in content directories lower than the current level (True) or does not look for web.config files in content directories lower than the current level (False). Установления простое ограничение, которое допускает настройку только в виртуальных каталогах, иисâ 10,0 может быть уверенным в том, что, если ** / . htm** не является виртуальным каталогом, он не должен искать файл конфигурации. By imposing a simple limitation, which allows configuration only in virtual directories, IISÂ 10.0 can know that, unless / .htm is a virtual directory, it should not look for a configuration file. Пропуск дополнительных файловых операций может значительно повысить производительность веб-сайтов, имеющих очень большой набор статических содержимого со случайным доступом. Skipping the additional file operations can significantly improve performance of websites that have a very large set of randomly accessed static content. Верно True

Управление модулями IIS 10,0 Managing IIS 10.0 modules

Службы IIS 10,0 были разделены на несколько расширяемых пользователем модулей для поддержки модульной структуры. IIS 10.0 has been factored into multiple, user-extensible modules to support a modular structure. Эта разложение имеет небольшую стоимость. This factorization has a small cost. Для каждого модуля интегрированный конвейер должен вызывать модуль для каждого события, относящегося к модулю. For each module the integrated pipeline must call the module for every event that is relevant to the module. Это происходит независимо от того, должен ли модуль выполнять какие – либо действия. This happens regardless of whether the module must do any work. Вы можете экономить циклы ЦП и память, удалив все модули, которые не относятся к конкретному веб-сайту. You can conserve CPU cycles and memory by removing all modules that are not relevant to a particular website.

Веб-сервер, настроенный для простых статических файлов, может включать только следующие пять модулей: Урикачемодуле, Хттпкачемодуле, StaticFileModule, Анонимаусаусентикатионмодуле и Хттплоггингмодуле. A web server that is tuned for simple static files might include only the following five modules: UriCacheModule, HttpCacheModule, StaticFileModule, AnonymousAuthenticationModule, and HttpLoggingModule.

Чтобы удалить модули из applicationHost.config, удалите все ссылки на модуль из разделов System. глобалмодулес/обработчики и System. IQ, а также удалите объявление модуля в System.. To remove modules from applicationHost.config, remove all references to the module from the system.webServer/handlers and system.webServer/modules sections in addition to removing the module declaration in system.webServer/globalModules.

Параметры классической модели ASP Classic ASP settings

Основная стоимость обработки классического запроса ASP включает инициализацию обработчика скриптов, компиляцию запрошенного скрипта ASP в шаблон ASP и выполнение шаблона в обработчике сценариев. The major cost of processing a classic ASP request includes initializing a script engine, compiling the requested ASP script into an ASP template, and executing the template on the script engine. Хотя стоимость выполнения шаблона зависит от сложности запрошенного скрипта ASP, ASP-модуль IIS может кэшировать обработчики сценариев в памяти и шаблонах кэша как в памяти, так и на диске (только в случае перегрузки кэша шаблонов в памяти) для повышения производительности в сценариях, связанных с ЦП. While the template execution cost depends on the complexity of the requested ASP script, IIS classic ASP module can cache script engines in memory and cache templates in both memory and disk (only if in-memory template cache overflows) to boost performance in CPU-bound scenarios.

Следующие параметры используются для настройки кэша шаблона классической модели ASP и кэша обработчика скриптов, а также не влияют на параметры ASP.NET. The following settings are used to configure the classic ASP template cache and script engine cache, and they do not affect ASP.NET settings.

System. Server/ASP/Cache system.webServer/asp/cache

attribute Attribute Описание Description По умолчанию Default
дисктемплатекачедиректори diskTemplateCacheDirectory Имя каталога, используемого ASP для хранения скомпилированных шаблонов при переполняется кэшем в памяти. The name of the directory that ASP uses to store compiled templates when the in-memory cache overflows.

Рекомендация: укажите каталог, который не является интенсивно используемым, например диск, который не используется совместно с операционной системой, журналом IIS или другим содержимым, к которому часто обращаются. Recommendation: Set to a directory that is not heavily used, for example, a drive that is not shared with the operating system, IIS log, or other frequently accessed content.

%SystemDrive%\inetpub\temp\ASP Compiled Templates %SystemDrive%\inetpub\temp\ASP Compiled Templates
максдисктемплатекачефилес maxDiskTemplateCacheFiles Указывает максимальное количество скомпилированных шаблонов ASP, которые могут быть кэшированы на диске. Specifies the maximum number of compiled ASP templates that can be cached on disk.

Рекомендация: Задайте максимальное значение 0x7FFFFFFF. Recommendation: Set to the maximum value of 0x7FFFFFFF.

2000 2000
скриптфилекачесизе scriptFileCacheSize Этот атрибут указывает максимальное количество скомпилированных шаблонов ASP, которые могут быть кэшированы в памяти. This attribute specifies the maximum number of compiled ASP templates that can be cached in memory.

Рекомендация. Задайте значение по меньшей мере в количестве часто запрашиваемых скриптов ASP, обслуживаемых пулом приложений. Recommendation: Set to at least as many as the number of frequently-requested ASP scripts served by an application pool. Если это возможно, задайте для параметра значение столько шаблонов ASP, сколько разрешено памяти. If possible, set to as many ASP templates as memory limits allow.

500 500
скриптенгинекачемакс scriptEngineCacheMax Указывает максимальное число обработчиков сценариев, которые будут хранить кэшированные в памяти. Specifies the maximum number of script engines that will keep cached in memory.

Рекомендация. Задайте значение по меньшей мере в количестве часто запрашиваемых скриптов ASP, обслуживаемых пулом приложений. Recommendation: Set to at least as many as the number of frequently-requested ASP scripts served by an application pool. Если это возможно, задайте для параметра значение, равное количеству обработчиков скриптов, если разрешено ограничение памяти. If possible, set to as many script engines as the memory limit allows.

250 250

System. Server/ASP/limits system.webServer/asp/limits

attribute Attribute Описание Description По умолчанию Default
процессорсреадмакс processorThreadMax Указывает максимальное число рабочих потоков, которые может создать ASP на каждый процессор. Specifies the maximum number of worker threads per processor that ASP can create. Увеличьте, если текущий параметр недостаточен для обработки нагрузки, что может вызвать ошибки при обработке запросов или вызвать нехватку ресурсов ЦП. Increase if the current setting is insufficient to handle the load, which can cause errors when it is serving requests or cause under-usage of CPU resources. 25 25

System. Server/ASP/comPlus system.webServer/asp/comPlus

attribute Attribute Описание Description По умолчанию Default
ексекутеинмта executeInMta Задайте значение true , если ошибки или сбои обнаруживаются в то время, когда IIS обслуживает содержимое ASP. Set to True if errors or failures are detected while IIS is serving ASP content. Это может произойти, например, при размещении нескольких изолированных сайтов, в которых каждый сайт работает под своим рабочим процессом. This can occur, for example, when hosting multiple isolated sites in which each site runs under its own worker process. Ошибки обычно выводятся из COM+ в Просмотр событий. Errors are typically reported from COM+ in the Event Viewer. Этот параметр включает модель многопоточного апартамента в ASP. This setting enables the multi-threaded apartment model in ASP. Неверно False

Параметр параллелизма ASP.NET ASP.NET concurrency setting

ASP.NET 3.5 ASP.NET 3.5

По умолчанию ASP.NET ограничивает параллелизм запросов для уменьшения потребления памяти стабильного состояния на сервере. By default, ASP.NET limits request concurrency to reduce steady-state memory consumption on the server. Приложениям с высоким уровнем параллелизма может потребоваться изменить некоторые параметры, чтобы повысить общую производительность. High concurrency applications might need to adjust some settings to improve overall performance. Этот параметр можно изменить в aspnet.config файле: You can change this setting in aspnet.config file:

Следующий параметр полезен для полного использования ресурсов в системе: The following setting is useful to fully use resources on a system:

максконкуррентрекуестперкпу Значение по умолчанию: 5000 maxConcurrentRequestPerCpu Default value: 5000

Этот параметр ограничивает максимальное количество одновременно выполняемых запросов ASP.NET в системе. This setting limits the maximum number of concurrently executing ASP.NET requests on a system. Значение по умолчанию — консервативно, чтобы сократить потребление памяти ASP.NET приложениями. The default value is conservative to reduce memory consumption of ASP.NET applications. Рекомендуется увеличить это ограничение в системах, где работают приложения, выполняющие длительные синхронные операции ввода-вывода. Consider increasing this limit on systems that run applications that perform long, synchronous I/O operations. В противном случае пользователи могут столкнуться с высокой задержкой из-за превышения ограничений очереди при высокой нагрузке при использовании параметра по умолчанию. Otherwise, users can experience high latency because of queuing or request failures due to exceeding queue limits under a high load when the default setting is used.

ASP.NET 4,6 ASP.NET 4.6

Помимо параметра Максконкуррентрекуестперкпу, ASP.NET 4,7 также предоставляет параметры для повышения производительности приложений, которые сильно полагаются на асинхронные операции. Besides the maxConcurrentRequestPerCpu setting, ASP.NET 4.7 also provides settings to improve the performance in the applications which heavily rely on asynchronous operation. Параметр можно изменить в файле aspnet.config. The setting can be changed in aspnet.config file.

  • перценткпулимит Значение по умолчанию: 90. асинхронный запрос имеет некоторые проблемы масштабируемости, возникающие при наличии большой нагрузки (помимо аппаратных возможностей) в таком сценарии. percentCpuLimit Default value: 90 Asynchronous request has some scalability issues when a huge load (beyond the hardware capabilities) is put on such scenario. Проблема обусловлена характером выделения в асинхронных сценариях. The problem is due to the nature of allocation on asynchronous scenarios. В этих условиях выделение будет выполняться при запуске асинхронной операции и будет использоваться после ее завершения. In these conditions, allocation will happen when the asynchronous operation starts, and it will be consumed when it completes. По истечении этого времени итâс объекты были перемещены в поколение 1 или 2 с помощью GC. By that time, it’s very possible the objects have been moved to generation 1 or 2 by GC. В этом случае увеличение нагрузки будет показывать увеличение числа запросов в секунду до точки. When this happens, increasing the load will show increase on request per second (rps) until a point. Когда мы передаем эту точку, время, затраченное на GC, начнет стать проблемой, а RP начнется на DIP, при отрицательном результате масштабирования. Once we pass that point, the time spent in GC will start to become a problem and the rps will start to dip, having a negative scaling effect. Чтобы устранить проблему, когда загрузка ЦП превысит значение параметра Перценткпулимит, запросы будут отправляться в собственную очередь ASP.NET. To fix the problem, when the cpu usage exceeds percentCpuLimit setting, requests will be sent to the ASP.NET native queue.
  • перценткпулимитминактиверекуестперкпу Значение по умолчанию: 100. регулирование ЦП (параметр Перценткпулимит) не основано на количестве запросов, но на том, насколько дорого они. percentCpuLimitMinActiveRequestPerCpu Default value: 100 CPU throttling(percentCpuLimit setting) is not based on number of requests but on how expensive they are. В результате может быть всего несколько ресурсоемких запросов, вызывающих резервное копирование в собственной очереди без возможности его очистки от входящих запросов. As a result, there could be just a few CPU-intensive requests causing a backup in the native queue with no way to empty it aside from incoming requests. Чтобы решить эту проблме, Перценткпулимитминактиверекуестперкпу можно использовать, чтобы гарантировать, что минимальное количество запросов будет обслуживаться до начала регулирования в. To solve this problme, percentCpuLimitMinActiveRequestPerCpu can be used to ensure a minimum number of requests are being served before throttling kicks in.

Параметры рабочего процесса и повторного запуска Worker process and recycling options

Можно настроить параметры для перезапуска рабочих процессов IIS и предоставить практичные решения для акутом ситуаций или событий без необходимости вмешательства или сброса службы или компьютера. You can configure options for recycling IIS worker processes and provide practical solutions to acute situations or events without requiring intervention or resetting a service or computer. К таким ситуациям и событиям относятся утечки памяти, увеличение нагрузки на память, неотвечающие и неактивные рабочие процессы. Such situations and events include memory leaks, increasing memory load, or unresponsive or idle worker processes. В обычных условиях могут не требоваться параметры повторного запуска, а перезапуск можно отключить, а система может быть настроена на повторный запуск очень редко. Under ordinary conditions, recycling options might not be needed and recycling can be turned off or the system can be configured to recycle very infrequently.

Вы можете включить перезапуск процесса для конкретного приложения, добавив атрибуты в элемент утилизация или периодикрестарт . You can enable process recycling for a particular application by adding attributes to the recycling/periodicRestart element. Событие очистки может инициироваться несколькими событиями, включая использование памяти, фиксированное количество запросов и фиксированный период времени. The recycle event can be triggered by several events including memory usage, a fixed number of requests, and a fixed time period. При перезапуске рабочего процесса запросы, поставленные в очередь и выполняющиеся, преобразуются, а новый процесс одновременно запускается для обслуживания новых запросов. When a worker process is recycled, the queued and executing requests are drained, and a new process is simultaneously started to service new requests. Элемент » Утилизация/периодикрестарт » предназначен для каждого приложения. Это означает, что каждый атрибут в следующей таблице секционирован отдельно для каждого приложения. The recycling/periodicRestart element is per-application, which means that each attribute in the following table is partitioned on a per-application basis.

System. applicationHost/Аппликатионпулс/Аппликатионпулдефаултс/перезапуск/Периодикрестарт system.applicationHost/applicationPools/ApplicationPoolDefaults/recycling/periodicRestart

attribute Attribute Описание Description По умолчанию Default
Память memory Включить перезапуск процесса, если потребление виртуальной памяти превышает заданное ограничение в килобайтах. Enable process recycling if virtual memory consumption exceeds the specified limit in kilobytes. Это полезное значение для 32-разрядных компьютеров с небольшим адресным пространством в 2 ГБ. This is a useful setting for 32-bit computers that have a small, 2 GB address space. Это позволит избежать неудачных запросов из-за ошибок нехватки памяти. It can help avoid failed requests due to out-of-memory errors. 0 0
privateMemory privateMemory Включить перезапуск процесса, если объем выделенной памяти превышает указанный предел в килобайтах. Enable process recycling if private memory allocations exceed a specified limit in kilobytes. 0 0
requests requests Включение повторного запуска процесса после определенного числа запросов. Enable process recycling after a certain number of requests. 0 0
time time Включить повторное использование процессов по истечении указанного периода времени. Enable process recycling after a specified time period. 29:00:00 29:00:00

Динамическая настройка рабочего процесса рабочей роли Dynamic worker-process page-out tuning

Начиная с Windows Server 2012 R2, IIS предлагает возможность настройки приостановки рабочего процесса после бездействия в течение определенного времени (в дополнение к параметру завершения, который существовал с момента выпуска IIS 7). Starting in Windows Server 2012 R2, IIS offers the option of configuring worker process to suspend after they have been idle for a while (in addition to the option of terminate, which existed since IIS 7).

Основным назначением функций неактивного рабочего процесса и завершения бездействия рабочих процессов является экономия использования памяти на сервере, так как сайт может потреблять много памяти, даже если он просто находится в режиме ожидания. The main purpose of both the idle worker process page-out and idle worker process termination features is to conserve memory utilization on the server, since a site can consume a lot of memory even if it’s just sitting there, listening. В зависимости от технологии, используемой на сайте (статическое содержимое VS ASP.NET и другие платформы), используемая память может находиться в любом месте от 10 МБ до сотен МБ, а это означает, что если на сервере настроено множество сайтов, то для определения наиболее эффективных параметров сайтов может значительно повыситься производительность как активных, так и приостановленных сайтов. Depending on the technology used on the site (static content vs ASP.NET vs other frameworks), the memory used can be anywhere from about 10 MB to hundreds of MBs, and this means that if your server is configured with many sites, figuring out the most effective settings for your sites can dramatically improve performance of both active and suspended sites.

Прежде чем мы перейдем к конкретным, мы должны помнить, что если ограничения памяти отсутствуют, то, вероятно, лучше просто настроить узлы так, чтобы они никогда не приходили к приостановке или прекращению работы. Before we go into specifics, we must keep in mind that if there are no memory constraints, then it’s probably best to simply set the sites to never suspend or terminate. В конце концов, сереâс небольшое значение в завершение рабочего процесса, если это единственный компьютер. After all, there’s little value in terminating a worker process if it’s the only one on the machine.

Если на сайте выполняется нестабильный код, например код с утечкой памяти или нестабильная работа, Настройка сайта на завершение в режиме простоя может быть быстрым и недействительным вариантом исправления ошибки в коде. In case the site runs unstable code, such as code with a memory leak, or otherwise unstable, setting the site to terminate on idle can be a quick-and-dirty alternative to fixing the code bug. Мы не рекомендуем использовать эту функцию в качестве механизма очистки, в то время как в Works есть более постоянное решение.] This isn’t something we would encourage, but in a crunch, it may be better to use this feature as a clean-up mechanism while a more permanent solution is in the works.]

Другой фактор, который следует учитывать, заключается в том, что если сайт использует большой объем памяти, то сам процесс приостановки выполняет сбор данных, так как компьютер должен записывать данные, используемые рабочим процессом, на диск. Another factor to consider is that if the site does use a lot of memory, then the suspension process itself takes a toll, because the computer has to write the data used by the worker process to disk. Если рабочий процесс использует большой объем памяти, то ее приостановка может оказаться более дорогостоящей, чем стоимость ожидания запуска резервного копирования. If the worker process is using a large chunk of memory, then suspending it might be more expensive than the cost of having to wait for it to start back up.

Чтобы максимально эффективно использовать функцию приостановки рабочего процесса, необходимо проверить сайты в каждом пуле приложений и решить, какие из них должны быть приостановлены, что должно быть завершено и что должно быть активно в течение неограниченного времени. To make the best of the worker process suspension feature, you need to review your sites in each application pool, and decide which should be suspended, which should be terminated, and which should be active indefinitely. Для каждого действия и каждого сайта необходимо определить идеальный период времени ожидания. For each action and each site, you need to figure out the ideal time-out period.

В идеале сайты, которые вы настраиваете для приостановки или прекращения, — это те, которые имеют посетителей каждый день, но не настолько, чтобы гарантировать его постоянное активное время. Ideally, the sites that you will configure for suspension or termination are those that have visitors every day, but not enough to warrant keeping it active all the time. Обычно это сайты с 20 уникальными посетителями в день или менее. These are usually sites with around 20 unique visitors a day or less. Вы можете проанализировать шаблоны трафика с помощью файлов журналов сайта и вычислить средний ежедневный объем трафика. You can analyze the traffic patterns using the site’s log files and calculate the average daily traffic.

Помните, что когда конкретный пользователь подключается к сайту, он обычно остается на нем по крайней мере в течение определенного времени, что делает дополнительные запросы, а значит, просто подсчитывает ежедневные запросы, может не точно отражать реальные шаблоны трафика. Keep in mind that once a specific user connects to the site, they will typically stay on it for at least a while, making additional requests, and so just counting daily requests may not accurately reflect the real traffic patterns. Для более точного чтения можно также использовать средство, например Microsoft Excel, для вычисления среднего времени между запросами. To get a more accurate reading, you can also use a tool, such as Microsoft Excel, to calculate the average time between requests. Пример: For example:

Number Number URL-адрес запроса Request URL Время запроса Request time Разностная версия Delta
1 1 /Саурцесилверлигхт/жеосаурце.веб/grosource.html /SourceSilverLight/Geosource.web/grosource.html 10:01 10:01
2 2 /Саурцесилверлигхт/жеосаурце.веб/sliverlight.js /SourceSilverLight/Geosource.web/sliverlight.js 10:10 10:10 0:09 0:09
3 3 /SourceSilverLight/Geosource.web/clientbin/geo/1.aspx /SourceSilverLight/Geosource.web/clientbin/geo/1.aspx 10:11 10:11 0:01 0:01
4 4 /lClientAccessPolicy.xml /lClientAccessPolicy.xml 10:12 10:12 0:01 0:01
5 5 /Саурцесилверлигхт/Жеосаурцевебсервице/Service. asmx / SourceSilverLight/GeosourcewebService/Service.asmx 10:23 10:23 0:11 0:11
6 6 /Саурцесилверлигхт/геоисточник. Web/Жеосеарчсервер. ¦. / SourceSilverLight/Geosource.web/GeoSearchServer. ¦. 11:50 11:50 1:27 1:27
7 7 /Рест/сервицес/качедсервицес/Silverlight_load_la. ¦ /rest/Services/CachedServices/Silverlight_load_la. ¦ 12:50 12:50 1:00 1:00
8 8 /Рест/сервицес/качедсервицес/Silverlight_basemap. ¦. /rest/Services/CachedServices/Silverlight_basemap. ¦. 12:51 12:51 0:01 0:01
9 9 /Рест/сервицес/динамиксервице/Silverlight_basemap. ¦. /rest/Services/DynamicService/ Silverlight_basemap. ¦. 12:59 12:59 0:08 0:08
10 10 /Рест/сервицес/качедсервицес/Ortho_2004_cache. AS. /rest/Services/CachedServices/Ortho_2004_cache.as. 13:40 13:40 0:41 0:41
11 11 /Рест/сервицес/качедсервицес/Ortho_2005_cache.js /rest/Services/CachedServices/Ortho_2005_cache.js 13:40 13:40 0:00 0:00
12 12 /рест/сервицес/качедсервицес/орсобасингине.аспкс /rest/Services/CachedServices/OrthoBaseEngine.aspx 13:41 13:41 0:01 0:01

Тем не менее, трудно определить, какой параметр применить к смыслу. The hard part, though, is figuring out what setting to apply to make sense. В нашем случае сайт получает пакет запросов от пользователей, а в таблице выше показано, что общее количество уникальных сеансов в течение 4 часов истекло. In our case, the site gets a bunch of requests from users, and the table above shows that a total of 4 unique sessions occurred in a period of 4 hours. При использовании параметров по умолчанию для приостановки рабочего процесса пула приложений сайт будет прерван по истечении времени ожидания по умолчанию, равного 20 минутам, что означает, что каждый из этих пользователей может столкнуться с циклом ускорения сайта. With the default settings for worker process suspension of the application pool, the site would be terminated after the default timeout of 20 minutes, which means each of these users would experience the site spin-up cycle. Это делает его идеальным кандидатом к приостановке рабочих процессов, так как в большинстве случаев сайт переходит в режим простоя, и поэтому его приостановка приведут к экономии ресурсов и позволяет пользователям сразу же обращаться к сайту. This makes it an ideal candidate for worker process suspension, because for most of the time, the site is idle, and so suspending it would conserve resources, and allow the users to reach the site almost instantly.

Последнее и очень важное замечание заключается в том, что для этой функции важна производительность диска. A final, and very important note about this is that disk performance is crucial for this feature. Так как процесс приостановки и пробуждения предполагает запись и чтение большого объема данных на жестком диске, мы настоятельно рекомендуем использовать для этого быстрый диск. Because the suspension and wake-up process involve writing and reading large amount of data to the hard drive, we strongly recommend using a fast disk for this. Твердотельные накопители (SSD) идеально подходят для этого, поэтому следует убедиться в том, что файл подкачки Windows хранится на нем (если сама операционная система не установлена на SSD-накопителе, настройте операционную систему для перемещения файла подкачки на него). Solid State Drives (SSDs) are ideal and highly recommended for this, and you should make sure that the Windows page file is stored on it (if the operating system itself is not installed on the SSD, configure the operating system to move the page file to it).

Независимо от того, используется SSD-диск или нет, мы рекомендуем исправить размер файла подкачки для размещения в нем данных для выхода из страницы без изменения размера файлов. Whether you use an SSD or not, we also recommend fixing the size of the page file to accommodate writing the page-out data to it without file-resizing. Изменение размера файла страницы может произойти, если операционная система должна хранить данные в файле подкачки, так как по умолчанию Windows настроена на автоматическую корректировку размера в зависимости от потребностей. Page-file resizing might happen when the operating system needs to store data in the page file, because by default, Windows is configured to automatically adjust its size based on need. Установив фиксированный размер, можно предотвратить изменение размера и повысить производительность. By setting the size to a fixed one, you can prevent resizing and improve performance a lot.

Чтобы настроить предварительно фиксированный размер файла подкачки, необходимо вычислить его идеальный размер, который зависит от количества сайтов, которые будут приостановлены, и объема используемой памяти. To configure a pre-fixed page file size, you need to calculate its ideal size, which depends on how many sites you will be suspending, and how much memory they consume. Если среднее значение составляет 200 МБ для активного рабочего процесса и на серверах, которые будут приостановлены, 500 узлов, то файл подкачки должен быть не менее (200 * 500) МБ над базовым размером файла подкачки (то есть базовый + 100 ГБ в нашем примере). If the average is 200 MB for an active worker process and you have 500 sites on the servers that will be suspending, then the page file should be at least (200 * 500) MB over the base size of the page file (so base + 100 GB in our example).

Когда сайты приостанавливаются, они потребляют около 6 МБ каждого, поэтому в нашем случае использование памяти, если все узлы приостановлены, займет около 3 ГБ. When sites are suspended, they will consume approximately 6 MB each, so in our case, memory usage if all sites are suspended would be around 3 GB. Однако в реальности йоуâре, вероятно, никогда не будет приостанавливаться одновременно. In reality, though, you’re probably never going to have them all suspended at the same time.

Параметры настройки безопасности транспортного уровня Transport Layer Security tuning parameters

Использование протокола TLS накладывает дополнительные затраты на ЦП. The use of Transport Layer Security (TLS) imposes additional CPU cost. Самый ресурсоемкий компонент TLS — это стоимость установления сеанса, так как она включает полное подтверждение. The most expensive component of TLS is the cost of establishing a session establishment because it involves a full handshake. При повторном подключении, шифровании и расшифровке также добавляются затраты. Reconnection, encryption, and decryption also add to the cost. Для повышения производительности TLS выполните следующие действия. For better TLS performance, do the following:

Включите поддержку открытых соединений HTTP для сеансов TLS. Enable HTTP keep-alives for TLS sessions. Это устраняет затраты на установку сеанса. This eliminates the session establishment costs.

Повторно используйте сеансы, если это уместно, особенно с трафиком без активности. Reuse sessions when appropriate, especially with non-keep-alive traffic.

Выборочно примените шифрование только к страницам или частям сайта, которые им нужны, а не ко всему сайту. Selectively apply encryption only to pages or parts of the site that need it, rather to the entire site.

  • Большие ключи обеспечивают дополнительную безопасность, но они также используют больше времени ЦП. Larger keys provide more security, but they also use more CPU time.
  • Все компоненты могут не требовать шифрования. All components might not need to be encrypted. Однако смешивание обычного протокола HTTP и HTTPS может привести к появлению всплывающего предупреждения о том, что не все содержимое страницы является безопасным. However, mixing plain HTTP and HTTPS might result in a pop-up warning that not all content on the page is secure.

Серверный интерфейс прикладного программирования (ISAPI) Internet Server Application Programming Interface (ISAPI)

Для приложений ISAPI специальные параметры настройки не требуются. No special tuning parameters are needed for ISAPI applications. При написании частного расширения ISAPI убедитесь, что оно написано для повышения производительности и использования ресурсов. If you write a private ISAPI extension, make sure that it is written for performance and resource use.

Рекомендации по настройке управляемого кода Managed code tuning guidelines

Интегрированная модель конвейера в IIS 10,0 обеспечивает высокую степень гибкости и расширяемости. The integrated pipeline model in IIS 10.0 enables a high degree of flexibility and extensibility. Пользовательские модули, реализованные в машинном или управляемом коде, могут быть вставлены в конвейер или заменены существующими модулями. Custom modules that are implemented in native or managed code can be inserted into the pipeline, or they can replace existing modules. Хотя эта модель расширяемости обеспечивает удобство и простоту, перед вставкой новых управляемых модулей, которые присоединяются к глобальным событиям, следует соблюдать осторожность. Although this extensibility model offers convenience and simplicity, you should be careful before you insert new managed modules that hook into global events. Добавление глобального управляемого модуля означает, что все запросы, включая запросы статических файлов, должны касаться управляемого кода. Adding a global managed module means that all requests, including static file requests, must touch managed code. Пользовательские модули уязвимы для таких событий, как сборка мусора. Custom modules are susceptible to events such as garbage collection. Кроме того, пользовательские модули добавляют значительные затраты на ЦП из-за упаковки данных между машинным и управляемым кодом. In addition, custom modules add significant CPU cost due to marshaling data between native and managed code. По возможности следует установить предварительное условие в Манажедхандлер для управляемого модуля. If possible, you should set preCondition to managedHandler for managed module.

Чтобы повысить производительность холодного запуска, обязательно выполните предварительную компиляцию веб-сайта ASP.NET или используйте функцию инициализации приложения IIS, чтобы подготовить приложение. To get better cold startup performance, make sure that you precompile the ASP.NET web site or leverage IIS Application Initialization feature to warm up the application.

Если состояние сеанса не требуется, убедитесь, что оно отключено для каждой страницы. If session state is not needed, make sure that you turn it off for each page.

При наличии множества операций, связанных с вводом-выводом, старайтесь использовать асинхронную версию соответствующих API, что обеспечит более высокую масштабируемость. If there are many I/O bound operations, try to use asynchronous version of relevant APIs which will give you much better scalability.

Кроме того, использование кэша вывода также повышает производительность веб-узла. Also using Output Cache properly will also boost the performance of your web site.

При запуске нескольких узлов, содержащих сценарии ASP.NET в изолированном режиме (один пул приложений на сайт), отслеживайте использование памяти. When you run multiple hosts that contain ASP.NET scripts in isolated mode (one application pool per site), monitor the memory usage. Убедитесь, что на сервере достаточно ОЗУ для ожидаемого количества одновременно выполняющихся пулов приложений. Make sure that the server has enough RAM for the expected number of concurrently running application pools. Рассмотрите возможность использования нескольких доменов приложений вместо нескольких изолированных процессов. Consider using multiple application domains instead of multiple isolated processes.

Другие проблемы, влияющие на производительность IIS Other issues that affect IIS performance

Следующие проблемы могут повлиять на производительность IIS: The following issues can affect IIS performance:

Установка фильтров, не поддерживающих кэширование Installation of filters that are not cache-aware

При установке фильтра, не поддерживающего кэширование HTTP, службы IIS полностью отключают кэширование, что приводит к снижению производительности. The installation of a filter that is not HTTP-cache-aware causes IIS to completely disable caching, which results in poor performance. Фильтры ISAPI, которые были написаны до ИИСÂ 6,0, могут вызвать это поведение. ISAPI filters that were written before IISÂ 6.0 can cause this behavior.

Запросы общего шлюза (CGI) Common Gateway Interface (CGI) requests

Читайте также:  Запретить менять обои рабочего стола windows 10
Оцените статью