Мы в процессе развертывания нового приложения в его реальной среде.
На серверах приложений работает приложение .NET, размещенное в IIS, которое использует EntityFramework и выполняет многочисленные вызовы приложениям, отличным от .NET COM +.
Мы смогли повлиять на производительность чистого кода .NET, изменив количество Максимальных рабочих процессов в пуле приложений IIS, но мой вопрос в том, как количество рабочих процессов соотносится с размером пула пулов приложений в службах компонентов. ? Вещи как:
Любое понимание с благодарностью получено ...
Количество рабочих процессов в двух пулах напрямую не связано. Вам нужно установить время пребывания в каждом бассейне. Таким образом, если рабочие IIS заняты и только небольшая часть общего времени тратится на приложение COM, потоки COM вряд ли будут снижать производительность.
Попробуйте измерить количество активных потоков в стрессовой ситуации, чтобы определить, как контролировать размеры отдельных пулов.
Учтите также, что рабочие процессы IIS также повторно используются по критериям, отличным от использования процессора. Это может существенно повлиять на вашу способность обмениваться данными между вызовами и может помешать попыткам сильно повлиять на прямую производительность.
Было бы лучше снизить затраты на создание моста между .NET и COM, рассмотрев тонкую оболочку COM, которая может агрегировать несколько запросов из одного запроса .NET. Это также может иметь побочный эффект в виде объединения нескольких методов COM в один поток из пула.