Você tem uma situação bastante única em que o COM se torna um gargalo para que você não possa simplesmente expandir. Idealmente, melhorar o desempenho com os objetos COM ou substituí-los por código gerenciado aumentaria ainda mais, mas você está no caminho certo para uma solução alternativa de desempenho de COM.
-
O IIS é capaz de lidar com centenas de pools de aplicativos, portanto, isso não é um problema. Ele adicionará alguns MB de RAM a cada pool de aplicativos, mas sem sobrecarga de desempenho extra.
-
Claro. Por pool de aplicativos, presumo que cada um seja um site completo com seu próprio pool de aplicativos. Tudo bem.
-
Se não for necessário, não altere a afinidade do processador, pois isso significa que você precisa mantê-lo e alterá-lo para sempre. Se a utilização da CPU é bastante plana, então você é bom com os padrões. Se você tiver outros aplicativos no servidor ou se houver um grande desequilíbrio, considere a afinidade do processador. O IIS faz um bom trabalho ao utilizá-los na maioria das vezes, por isso é melhor deixar o trabalho pesado se possível.
-
Como você diz, as sessões fixas lidam com isso, então você é bom. Web gardens podem ter resolvido seus problemas de COM se você não tivesse o estado de sessão InProc com o qual se preocupar. Como um lado, você pode considerar o uso do servidor de estado do ASP.NET. Faça com que cada servidor use o servidor de estado local e faça com que o balanceador de carga use sessões fixas com uma ligação por servidor. Isso resolveria o estado da sessão (contanto que tudo fosse serializado, o que geralmente acontece) e permitirá que você jogue facilmente com as configurações do jardim da Web sem ter que mexer com o balanceador de carga.