Как настроить IIS и SQL, чтобы снизить потребление ОЗУ?

Здравствуйте. Есть Ферма Sharepoint 2016 состоящая из 4х серверов:
1) DB1 - WM, 8 ядер по 2,3 GHz, 14 Гб RAM, Wndows Server 2016. Установлен SQL 2017;
2) SHPT1 - WM, 8 ядер по 2,3 GHz, 16 Гб RAM, Wndows Server 2016. Установлен Sharepoint 2016 с ролями - передний план и распределенный кэш;
3) SHPT2 - WM, 8 ядер по 2,3 GHz, 16 Гб RAM, Wndows Server 2016. Установлен Sharepoint 2016 с ролями - Сервер приложений и поиск;
4) OWA1 - WM, 8 ядер по 2,3 GHz, 12 Гб RAM, Wndows Server 2016. Установлен Office Online Service.

На DB1 процесс sqlservr.exe съедает до 92% ОЗУ.
На SHPT1 процессы w3wp.exe съедают до 80% ОЗУ.
На SHPT2 процессы noderunner.exe съедают до 80% ОЗУ.
На OWA1 процессы w3wp.exe съедают до 80% ОЗУ.

В тот момент, когда потребление ОЗУ становится больше 70% - ферма начинает сильно подтормаживать, спасает только перезагрузка всех серверов.
Я уверен, что потребление ОЗУ можно как-то умереть, но не смог найти нормального мануала, по тонкой настройке. Может кто-то может что-то подсказать?
  • Вопрос задан
  • 731 просмотр
Пригласить эксперта
Ответы на вопрос 2
tsklab
@tsklab Куратор тега SQL Server
Здесь отвечаю на вопросы.
Buzzz
@Buzzz
SharePoint | Office 365 | .Net Developer
Посмотри в SQL у тебя ограничена макс память? Если там всё норм, посмотри индексации особенно контента при RBS немного замедляется взаимодействие с файлами. незначительно но работают внутренние процессы по переливки файлов, архивации, доставки и сопутствующие процессы.
Ты профайлером смотрел, что происходит при нагрузке. Ещё есть такая история, как только SQL начинает подъедать он кушает всё что ему нужно, а потом этот пик не отпускает (особенно с процами) для возможных прыжков.

Самое интересное кроется в нодах поисковой системы их 5 штук точнее (noderunner)
Проверь насколько часто делается Full Crawl. Если раз в час, то убирай его раз в сутки, у тебя слабая инфраструктура для его работы (Он работает отлично при том что каждая их нод на отдельном серервере + некоторые службы собраны в кластер). Если ты убрал все ноды и весь пайплайн поиска, хоть и на отдельный сервер но зато все, они откушают в легкую от 2 ГБ памяти в режиме ожидания, покушают процессор и нагрузят сервера + если у тебя частый Full crawl они тебе нагрузят БД вечными инсертами, это ты должен был выяснить при профайлинге SQL и выявлением что стало причиной.

Если всё таки, ты разобрался и уверен что это SQL и вечные инсерты и загруз со стороны поиска, то настраивай поиск более тщательней через PowerShell ONLY!
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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