quinta-feira, 7 de janeiro de 2010

Restart de Listener

Nihao,

Ja está disponivel o Release FC6 do Informix 11, neste veio embutida uma feature muita simples mas com grande impacto para o DBA.

Em ambientes de missão critica com servidores de aplicações distribuidos é preciso planejar as portas de banco por onde essas aplicações irão se conectar, recomenda-se distribuir as portas de forma que quando um ambiente pare o outro continue no ar.

Caso algum aplicação (por exemplo uma aplicação Web) estoure o limite de conexções de uma porta do banco e simule um DOS (Denyal of Services) antigamente era necessário fazer um stop/start do banco para que o Listener voltasse a responder.

Após o Informix 9.40 foram embutidas 2 novos parametros:

LISTEN_TIMEOUT - determina o timeout da abertura da conexão TCP/IP, mesmo com a conexão em estado established e o thread alocado na instância isto não quer dizer que a conexão já foi estabelecida.

MAX_INCOMPLETE_CONNECTIONS - determina a quantidade de threads em status de abertua de conexão que serão permitidos antes do Informix comecar a descartar as conexões.

Antes desta implementação o Informix possuia apenas um listener thread (thread responsavel pela abertura de conexões), agora existem multiplos listener threads
(listen_authenticate).

Mais informações sobre o assunto pesquisar em:
http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.admin.doc/admin210.htm


Após um cenário onde uma aplicação causa estouro de requisições no listener muitas vezes podemos recuperar o ambiente apenas desligando a aplicação causadora e depois fazendo um restart no listener.

Agora no Informix 11.50.FC6 temos uma opção no onmode que permite manipular o status das portas (listener) sem a necessidade de parar toda a instancia.

>>-onmode-- -P--+-start---+--server_name-----------------------><
+-stop----+
'-restart-'


Esta feature tambem é util quando temos multiplas interfaces de rede no servidor, quando é necessário fazer a manutenção em apenas uma podemos indisponibilizar somente as aplicações que acessam esta interface.

Como falei anteriormente, esta é uma feature que poucos usam, porém em grandes ambientes de missão critica é muito importante, é mais um sinal que o Informix não é um banco de dados para Appliances ou ambientes pequenos, a cada release possui mais e mais features para manutenção online sem causar indisponibilidade de ambiente.

Saludos