Sobre o AC (Application Continuity) no Autonomous Database
O Application Continuity mascara interrupções de usuários finais e aplicativos, recuperando o trabalho em andamento para sessões de banco de dados impactadas após interrupções. O Application Continuity executa essa recuperação abaixo do aplicativo para que a interrupção apareça para o aplicativo como uma execução um pouco atrasada.
Seus aplicativos obtêm disponibilidade contínua quando manutenção planejada, paralisações não programadas e rebalanceamentos de carga do banco e dados ficam ocultos do aplicativo. A combinação de melhores práticas de codificação de aplicativos, configuração de continuidade de aplicativos e Autonomous Database garante que seus aplicativos estejam continuamente disponíveis.
A melhor abordagem para ocultar atividades de manutenção planejadas de seus aplicativos é drenar ou fazer failover de forma transparente dos aplicativos. Os pools de conexões e camadas intermediárias da Oracle, incluindo o Servidor WebLogic, o Oracle Universal Connection Pool (UCP), o pool de sessões do OCI e ODP.NET o Provedor Não Gerenciado, têm conhecimento do FAN (Fast Application Notification) e, portanto, são notificados quando a manutenção está em andamento no Autonomous Database para permitir a drenagem normal do trabalho antes da manutenção. O Application Continuity é executado durante a manutenção planejada para fazer failover das sessões que não são drenadas no intervalo de drenagem predefinido (5 minutos no Autonomous Database).
Para ocultar interrupções não planejadas resultantes de um componente ou falha de comunicação, a Oracle fornece:
-
Notificação. O mecanismo FAN é a primeira etapa para ocultar interrupções. O FAN notifica os clientes e acaba com a espera atual da rede quando ocorre uma interrupção. Isso evita a paralisação de aplicativos por causa de longas esperas pela rede. Para o Autonomous Database, o FAN é tratado no driver e pelo gerenciador de conexão de nuvem do Autonomous Database.
A notificação FAN aciona automaticamente o fechamento de conexões ociosas e a abertura de novas conexões no novo local de serviço, e permite um tempo configurável para que o trabalho ativo seja concluído no local de serviço prestes a ser desativado. As principais camadas intermediárias JDBC de terceiros, como IBM WebSphere, permitem o mesmo comportamento quando configuradas com o UCP. Para aplicativos baseados em JDBC que não podem usar o UCP, a Oracle fornece soluções usando o Oracle Drivers e testes de conexão. No Autonomous Database, o FAN para manutenção planejada é enviado na Faixa.
-
Recuperação. Depois que o cliente é notificado, o tratamento de failover com o TAC (Transparent Application Continuity) ou o AC (Application Continuity) restabelece uma conexão com o Autonomous Database e repete o trabalho em andamento, sem commit, quando possível. Repetindo o trabalho em andamento, o aplicativo geralmente pode continuar a ser executado sem saber que ocorreu alguma falha.
Você ativa o Application Continuity no Autonomous Database em uma das duas configurações, dependendo do aplicativo:
-
Continuidade de Aplicativos (AC)
O Application Continuity oculta interrupções para aplicativos thin baseados em Java e aplicativos do Oracle Database baseados em Oracle Call Interface e ODP.NET com suporte para drivers de código-fonte aberto, como Node.js e Python. A Continuidade de Aplicativos recria a sessão recuperando-a de um ponto conhecido que inclui estados de sessão e estados transacionais. O Application Continuity reconstrói todo o trabalho em andamento. O aplicativo continua como estava, vendo um tempo de execução um pouco atrasado quando ocorre um failover.
-
TAC (Transparent Application Continuity, Continuidade transparente de aplicativos)
A Continuidade Transparente de Aplicativos (TAC) rastreia e registra, de forma transparente, a sessão e o estado transacional para que a sessão do banco de dados possa ser recuperada após paralisações recuperáveis. Isso é feito sem depender de conhecimento do aplicativo ou alterações no código do aplicativo, permitindo que a Continuidade Transparente de Aplicativos seja ativada para seus aplicativos. A transparência e o failover do aplicativo são obtidos consumindo as informações de rastreamento de estado que capturam e categorizam o uso do estado da sessão à medida que o aplicativo emite chamadas do usuário.
Consulte Visão Geral da Continuidade de Aplicativos para obter mais informações sobre a Continuidade de Aplicativos.
Por padrão, a Continuidade de Aplicativos é desativada no Autonomous Database.
Tópico principal: Usar a Continuidade de Aplicativos no Autonomous Database