<< Clique para Mostrar o Sumário >>
Utilizando Bancos de Dados com Hot-Standby |
Pode-se ter dois servidores executando separadamente em uma mesma aplicação. Um deles permanece ativo, enquanto o outro permanece em estado de espera (standby), aguardando uma possível falha.
O Hot-Standby garante a continuidade da aplicação, mas quando se utiliza bancos de dados, também é preciso garantir a continuidade do acesso à base de dados.
Há duas maneiras de resolver este problema. Na primeira, ambas as aplicações acessam uma mesma base de dados. Habilita-se o acesso ao banco de dados na aplicação, configurando o objeto DBServer em ambos servidores (Principal e Standby) com os mesmos parâmetros de localização do banco de dados na rede. Para garantir a continuidade do sistema, é importante que a base de dados esteja em uma máquina separada, acessível aos dois servidores.
Na segunda maneira, a gravação dos dados é feita em bases diferentes. Neste caso, o ideal é ter-se os dois bancos de dados executando localmente, em ambos os servidores. Assim, garante-se que o acesso ao banco de dados está sempre disponível, pois a máquina que executa a aplicação também executa o banco de dados.
Uma opção interessante neste caso é a sincronização entre as diferentes bases de dados da aplicação principal e secundária. A propriedade EnableSynchronization do objeto DBServer habilita este recurso na aplicação. Quando ela está ativa, todos os dados gravados na base principal são atualizados na base em Standby quase instantaneamente.
NOTA |
Se a aplicação principal não conseguir enviar os dados para o servidor em Standby, estes dados permanecem armazenados localmente em disco, para posterior envio quando a comunicação entre os dois computadores for restabelecida, assegurando assim a igualdade entre as tabelas geradas pela aplicação. |