Мастер-Тур(15):Рекомендации по разбору проблем с производительностью — различия между версиями
| [досмотренная версия] | [досмотренная версия] |
Biryukov (обсуждение | вклад) (→Рекомендации по настройке) |
Biryukov (обсуждение | вклад) (→Рекомендации по настройке) |
||
| Строка 9: | Строка 9: | ||
* При большом количестве запросов к ''gds-авиа'', рекомендуется использовать подключение выделенной службы в режиме ''[[Мастер-Тур(15):Установка#Установка службы поиска|SearchApiRemoteServices]]'' | * При большом количестве запросов к ''gds-авиа'', рекомендуется использовать подключение выделенной службы в режиме ''[[Мастер-Тур(15):Установка#Установка службы поиска|SearchApiRemoteServices]]'' | ||
* Правильные настройки параметров ограничений на максимальное количество запросов поставщику внешних ''gds-отелей'' | * Правильные настройки параметров ограничений на максимальное количество запросов поставщику внешних ''gds-отелей'' | ||
| − | * | + | * Производительность системы зависит от того, как будет использоваться мощность процессора при работе со службой поиска. Существуют следующие настройки, которые это регулируют. По умолчанию все коэффициенты стоят в значении 0,8: |
| + | ** <add key="[[Мастер-Тур(15):Установка#Установка службы поиска|actualFiltersInitCoresKoeff]]" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при первичном запуске службы поиска | ||
| + | ** <add key="[[Мастер-Тур(15):Установка#Установка службы поиска|actualFiltersRecalcCoresKoeff]]" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при перерасчете актуальных фильтров | ||
| + | ** <add key="[[Мастер-Тур(15):Установка#Установка службы поиска|useParallelRecalcForRoutes]]" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при перерасчете маршрутов | ||
| + | ** <add key="[[Мастер-Тур(15):Установка#Установка службы поиска|searchCoresKoeff]]" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при поиске в онлайне или API | ||
| + | ** В рамках этой статьи мы не можем дать оптимальные точные значения этих параметров, потому что это зависит от множества конкретных факторов (технических характеристик серверов, параметры нагрузки, объемы данных и т.д.). Наша рекомендация – выявляйте оптимальную конфигурацию экспериментальным путем. Меняете один-два параметра – смотрите на результат – делаете следующую итерацию для выявления оптимальной работы системы. | ||
* Увеличение скорости загрузки службы поиска можно добиться переводом ''TempDB SQL сервера'' в пространство ОЗУ (с помощью сторонних программ) или максимально доступные NV или SSD диски | * Увеличение скорости загрузки службы поиска можно добиться переводом ''TempDB SQL сервера'' в пространство ОЗУ (с помощью сторонних программ) или максимально доступные NV или SSD диски | ||
Текущая версия на 14:57, 6 августа 2025
Версия статьи от 6-08-2025.
Содержание
Введение
В данной статье представлены рекомендации по разбору проблем с производительностью.
Рекомендации по настройке
- В целях безопасности приложение TourPrograms необходимо размещать на отдельный порт и скрыть для public-интернет.
- Служба фильтров TourSearchOwin должна быть закрыта для public-интернет.
- При большом количестве запросов к gds-авиа, рекомендуется использовать подключение выделенной службы в режиме SearchApiRemoteServices
- Правильные настройки параметров ограничений на максимальное количество запросов поставщику внешних gds-отелей
- Производительность системы зависит от того, как будет использоваться мощность процессора при работе со службой поиска. Существуют следующие настройки, которые это регулируют. По умолчанию все коэффициенты стоят в значении 0,8:
- <add key="actualFiltersInitCoresKoeff" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при первичном запуске службы поиска
- <add key="actualFiltersRecalcCoresKoeff" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при перерасчете актуальных фильтров
- <add key="useParallelRecalcForRoutes" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при перерасчете маршрутов
- <add key="searchCoresKoeff" value="0,8" /> – определяет, какой максимальный % ядер процессора будет использоваться службой поиска при поиске в онлайне или API
- В рамках этой статьи мы не можем дать оптимальные точные значения этих параметров, потому что это зависит от множества конкретных факторов (технических характеристик серверов, параметры нагрузки, объемы данных и т.д.). Наша рекомендация – выявляйте оптимальную конфигурацию экспериментальным путем. Меняете один-два параметра – смотрите на результат – делаете следующую итерацию для выявления оптимальной работы системы.
- Увеличение скорости загрузки службы поиска можно добиться переводом TempDB SQL сервера в пространство ОЗУ (с помощью сторонних программ) или максимально доступные NV или SSD диски
Проверить
Службы
- Начиная с семейства Windows 7: рекомендуется добавить каталог со службами в исключение программы Windows Defender (встроенный антивирус). Проблема проявляется в необоснованно долгой работе математических операций на стороне службы при проверке в реальном времени антивирусом.
- Взаимодействие службы поиска со службой фильтров должно производиться по внутренним адресам локальной сети. Трафик между службами не должен идти через маршрутизатор
Приложения IIS
- Приложения разных релизов должны находиться в разных пулах приложений. Если ставится тестовая среда с новыми сборками, то необходимо выделить их в отдельных пул
- Сторонние приложения не должны быть в пулах для работы Мастер-Тур
- Если в IIS включено логирование, то ротацию логов необходимо настроить по размеру не более 9 500 000 (байт). IIS, даже на 64-ти битной платформе, не в состоянии корректно работать с логами более 10мб. При активном использовании или парсинге приложений лог может разбухать очень быстро.
- Вынос приложений IIS в отдельный пул приложений
Терминальный сервер
Устранение ошибок печати отчетов
Отключение ID сеанса в формировании пути временной папки. Для каждого пользователя во время rdp сеанса выделяется в профиле временная папка. Путь формируется по принципу UserProfile\Temp\IDRDP. При этом папка создается только на уровне папки temp без ID сеанса.
- Отключение через реестр:
path: HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services name: PerSessionTempDir data: 0 type: dword
- Либо через политики сервера:
Computer Configuration\Policies\Administrative Templates\Windows Components\Terminal Services\Terminal Server\Temporary folders
Часть проблем печати отчетов может решить установка соответствующих версий Developer Pack компонентов framemowork. Версия dev пакета должна соответствовать установленной версии framework https://dotnet.microsoft.com/en-us/download/dotnet-framework/net481