Arquitetura da Aplicação uniGUI

O diagrama a seguir representa a estrutura interna de um servidor uniGUI.

Cada servidor uniGUI possui uma única cópia do ServerModulearrow-up-right, que é criada uma vez por servidor, juntamente com múltiplas sessões, que são criadas e destruídas dinamicamente conforme a atividade do usuário. Uma sessão uniGUI contém um DataModule especializado chamado MainModulearrow-up-right, que é automaticamente criado para cada sessão. Também contém um Form chamado MainFormarrow-up-right, que é o ponto de entrada principal para a aplicação Web. Se o projeto contém um LoginFormarrow-up-right, ele será ativado antes do MainForm para fornecer uma maneira confiável e segura de login do usuário. Como esperado, cada sessão pode conter vários DataModulearrow-up-rights e Forms.

Cada vez que um usuário abre uma nova instância da aplicação Web, o servidor cria uma nova sessão. Uma sessão permanecerá ativa até que o usuário faça logout, feche o navegador/aba ou ela expire por timeout. Cada sessão mantém um estado completo da aplicação Web em execução, portanto as sessões uniGUI são chamadas de com estado (stateful). Você pode considerar cada sessão como uma cópia privada da sua aplicação Web, que coexiste com outras sessões no espaço de endereço do servidor, mas é isolada de todas as demais. O servidor cria cada sessão com um "Session Id" único, que ele usa para associar corretamente as requisições do cliente às sessões (o Session Id faz parte das requisições AJAX).

Se a aplicação uniGUI for apenas um módulo ISAPI, o servidor em execução instanciará um ISAPI Handler. Se não houver servidor Web, o servidor em execução habilitará seu servidor Web interno. Em ambos os casos, todas as requisições para o servidor Web ativo eventualmente irão para a sessão correta.

Tech-1