Что такое оптимальные настройки для Переработки Пулов приложений в IIS7 в общей среде?

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

32
задан p.campbell 22 April 2013 в 15:01
поделиться

3 ответа

Как Hoster, Вы определенно хотите переработать на Памяти & Время, потенциально пределы Запроса и ЦП. Вы хотите быть довольно агрессивными об этих пределах, но удостоверяться Вы публикуете их своим клиентам.

Память - 512 для x86 поля, возможно, 768. Для x64 можно установить это намного выше в зависимости от количества хостов на сервер. Просто необходимо быть осторожными и наблюдать, что пул приложений перерабатывает события на проблемах памяти.

Время - который Мы обычно перерабатываем в 1:00 утром, плюс или минус (первый сайт 1:01, второе 1:11, третье 1:21, именно так у Вас нет всей переработки одновременно)

предел Запроса - 35,000 был значением по умолчанию для IIS6, но это число довольно произвольно, и очень иждивенец на рассматриваемом сайте. Для небольших сайтов использования ночные перерабатывают, совершит нападки задолго до того, как Вы получаете запросы 35k.

ЦП - 95%/1 минут limit/KillW3WP, но использование это тщательно. Мое понимание этого - то, что, если ЦП поражает 95% + по пределу 1 минуты для этого рабочего процесса, рабочий процесс уничтожается и не может перезапустить для остатка от предела, когда Действие установлено на KillW3WP. Вы могли бы хотеть попробовать NoAction первоначально и просто смотреть Ваши журналы событий тщательно.

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

Одна вещь помнить состоит в том, что Вы должны устанавливать retail="true" в <deployment> элемент в Вашем machine.config:

<system.web>
    <!--
        <deployment
            retail = "false" [true|false]
        />
    -->
    <deployment retail="true" />
</system.web>

установка Not это позволит сайту включать отладку, которая позволяет неограниченные тайм-ауты в запросах - не точно идеальный для hoster...

35
ответ дан 27 November 2019 в 21:05
поделиться

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

я узнал об этом из блога Al Zabir: http://msmvps.com/blogs/omar/archive/2008/10/04/best-practices-for-creating-websites-in-iis-6-0.aspx

Daniel S. прав, Ваши переменные сеанса уничтожаются на, перерабатывают, поэтому удостоверьтесь, что Вы тестируете это хорошо или имеете хорошую защиту от ошибок / восстановление при получении объектов сессии.

2
ответ дан 27 November 2019 в 21:05
поделиться

Подсказка: при переработке приложения все переменные сеанса уничтожаются... так осторожность на этом!

, по моему скромному мнению, сохраните значения по умолчанию.

1
ответ дан 27 November 2019 в 21:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: