Karuta’s ASP & M$ SQLserver

Dicas, códigos e outras coisinhas de meus estudos para não esquecer…

Global.ASA – Aplicações e sessões

Posted by karuta em maio 16, 2008

 

Relembramos o conceito de aplicações e sessões e vemos seu funcionamento. Também mostramos o trabalho com o arquivo global .asa para controlar sucessos de aplicação e sessão.

 

Para falar do Global.ASA é necessário relembrarmos ou clarearmos previamente dois conceitos como são as aplicações e as sessões.

Aplicações e sessões

Uma aplicação pode-se entender como mais ou menos o que é um website. Os domínios da aplicação são o diretório raiz e os subdiretórios desta. Em um servidor web como PWS temos uma aplicação na raiz do servidor, e por cada diretório virtual que criarmos teremos outra aplicação.

O funcionamento das aplicações está ligado ao das sessões. As aplicações são globais a todo o site e as sessões são particulares de cada usuário. Concretamente funcionam com este processo:

  • A aplicação está parada, assim como as sessões, porque não há nenhum usuário dentro.
  • A aplicação é colocada em funcionamento quando entra o primeiro usuário.
  • O primeiro usuário coloca em andamento uma sessão.
  • Os seguintes usuários já têm em andamento a aplicação, com o qual somente desatam a criação de uma sessão cada um.
  • Com cada usuário que abandona a página (para isso se passam 20 minutos ou mais sem consultar nenhuma outra página), fecha-se uma sessão.
  • Com o último usuário que sai fecha-se a aplicação.

Podem-se criar variáveis de aplicação e de sessão em qualquer momento. Remarcamos, as variáveis aplication vão ser comuns para todos os recursos da aplicação todos os usuários, etc. todos acessam a mesma variável. As variáveis de sessão são locais a cada usuário, portanto cada usuário tem uma cópia da variável sessão distinta do outro usuário, que pode ter valores distintos.

Para criar variáveis de aplicação

Application(“nomeDeVariavel”) = valor

Para se assegurar exclusão mútua ao acessar a uma variável de aplication se utilizam os métodos lock e unlock, desta maneira:

Application.lock
Application(“nomeDeVariavel”) = valor
Application.unlock

Criar variáveis de sessão

Session(“nomeDeVariavel”) = valor

O que é o global.asa

Global.ASA vai nos servir para controlar os eventos principais associados com o início e fim da aplicação, assim como com o início e fim de sessão. Com outras palavras, com global.asa podemos fazer coisas quando se iniciem e acabem as aplicações e as sessões.

O global.asa se coloca no diretório raiz da aplicação e tem a seguinte sintaxe:

<SCRIPT LANGUAGE=VBScript RUNAT=server>

sub application_onStart()
  ‘sentencas que se executam ao entrar o primeiro usuario
end sub

sub application_onEnd()
  ‘sentencas a executar ao partir o ultimo usuario
end sub

sub session_onStart()
  ‘sentencas que se executam cada vez que entra um usuario
end sub

sub session_onEnd()
  ‘sentencas a executar ao partir cada usuario
end sub

</SCRIPT>

Um etalhe a destacar por sua utilidade prática é que se quisermos substituir nosso global.asa por outro, terá que apagar o serviço e voltar a ligar, ou inclusive voltar a reiniciar o computador se o anterior não funcionar. Se não fizermos isto sempre tomará a versão antiga do global.asa, mesmo se tiver mudado. Por esta mesma razão, há que ter cuidado que o arquivo global.asa não tenha erros, pois nossa página dará erros até que reiniciemos o serviço, com o conseguinte espaço de tempo no qual estará o domínio cortado.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

 
%d blogueiros gostam disto: