Considerações Especiais para Módulos ISAPI
Um módulo ISAPI é uma DLL especializada carregável pelo servidor web Microsoft IIS. Módulos ISAPI são DLLs padrão do Windows que devem ser hospedadas por outro processo. No IIS, um processo chamado w3wp.exe carrega e serve DLLs ISAPI. Cada DLL ISAPI herda privilégios e direitos de acesso do seu processo hospedeiro e só pode acessar pastas, arquivos e outros recursos do sistema que sejam acessíveis pelo processo hospedeiro.
O Windows atribui uma conta de usuário a cada processo hospedeiro ISAPI que pode ser a conta integrada chamada IUSR ou qualquer outra conta de usuário configurada pelo administrador. Um processo hospedeiro também é chamado de ISAPI pool. Um ISAPI pool é uma coleção de processos hospedeiros que compartilham a mesma configuração. Cada pool pode ser configurado para executar uma ou mais aplicações ISAPI. Veja esta seção para IIS 7.0 para saber como uma aplicação é criada e configurada: https://unigui.com/doc/online_help/iis_7_0.htm
Você pode compartilhar um pool entre múltiplos módulos ISAPI, ou criar uma aplicação separada para cada módulo ISAPI e atribuir pools separados a cada aplicação. Aplicações no mesmo pool são isoladas de aplicações em outros pools, mas aplicações dentro do mesmo pool não são totalmente isoladas umas das outras. Se uma aplicação em um pool ficar instável, ela pode afetar outras aplicações que compartilham esse pool. Se um pool travar, todas as aplicações nesse pool ficam indisponíveis até que o application pool seja reiniciado.
Aplicações uniGUI são stateful e mantêm informações complexas de estado na memória do servidor. Se a aplicação travar, as sessões ativas perderão suas informações de estado e todos os usuários conectados precisarão entrar em novas sessões quando o application pool voltar ao ar.
Como aplicações uniGUI são stateful, implantá-las junto com módulos ISAPI instáveis pode levar a uma experiência ruim para o usuário após um travamento (sessões perdidas e re-login forçado). Garanta que sua aplicação uniGUI esteja estável antes de implantá-la em produção e considere isolar aplicações críticas em application pools separados.