Nenhum deles realmente definiu características de desempenho ou escalabilidade separadas do contexto de seu aplicativo e de seu ambiente. O que funcionaria melhor depende do que você está fazendo.
Estático: defina o número de processos de aplicativos que estão disponíveis o tempo todo. As condições que argumentam para isso incluem:
- Você pode se dar ao luxo de ter instâncias suficientes do aplicativo circulando o tempo todo para agilizar o máximo de tráfego possível, por qualquer motivo (a máquina não precisa fazer muita coisa, você nunca consegue muito tráfego, a máquina tem muitos recursos extras, o que você tem).
- Uma instância do processo do aplicativo tem tempo de inicialização significativo e seus usuários ficarão incomodados com isso.
- A máquina precisa ter apenas uma certa quantidade de recursos usados por esse aplicativo para que outros trabalhos possam ser executados sem interferência indevida.
Dinâmico: número variável de processos de aplicativos que são iniciados sob demanda e eliminados quando não são usados. As condições que argumentam para isso incluem:
- Seu tráfego é muito espinhoso (autônomo), por isso é importante gerar mais processos de aplicativos para lidar com isso.
- Uma instância de processo de aplicativo é iniciada muito rapidamente, por isso, não é muito prejudicial precisar gerar uma solicitação para lidar com uma solicitação.
- A máquina precisa de seus recursos para outros fins, por isso é bom liberá-los quando puder, mas não há problema em usar muitos deles para esse aplicativo quando o tráfego estiver pesado.