Asp – Global .ASA

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.

Fonte: http://www.criarweb.com/artigos/408.php

Deixe um comentário