Sobre a criação de integrações assíncronas resilientes

Às vezes, você pode achar que suas integrações são frágeis, incapazes de lidar com interrupções breves ou temporárias. Você precisa de sua integração assíncrona para dimensionar com eficiência e precisa de opções para desenvolver e testar essas integrações para garantir que funcionem conforme esperado na produção. Este manual de soluções apresenta abordagens sugeridas para a construção de integrações assíncronas resilientes às realidades das redes e infraestruturas modernas.

Por exemplo, quando você está criando entidades em uma nuvem financeira usando as APIs REST, podem ocorrer interrupções temporárias durante a criação de relatórios de despesas, contas bancárias ou outras entidades. Para acelerar dinamicamente essas solicitações atingindo o Financial Cloud, o padrão de estacionamento é discutido neste manual. Com o padrão de estacionamento, você pode armazenar os dados em um estágio intermediário antes de processar os dados para evitar desafios de processamento como batch, correlação/fluxos de mensagens complexas e limitação.

Sobre Integrações no Oracle Integration

As integrações são o principal ingrediente do Oracle Integration. Uma integração inclui pelo menos uma conexão de trigger (origem) (para solicitações enviadas ao Oracle Integration) e chamada (destino) (para solicitações enviadas do Oracle Integration para o destino) e o mapeamento de campo entre essas duas conexões.

Ao criar suas integrações, você cria as conexões que já criou definindo como processar os dados para as conexões de trigger (origem) e chamada (destino). Isso pode incluir a definição do tipo de operações a serem executadas nos dados, os objetos de negócios e os campos para os quais essas operações serão executadas, os esquemas obrigatórios e assim por diante. Para facilitar isso, as tarefas de configuração mais complexas são tratadas pelo Oracle Integration. Depois que as conexões do trigger (origem) e da chamada (destino) forem configuradas, os mapeadores entre os dois serão ativados para que você possa definir como as informações serão transferidas entre as estruturas de dados do trigger (origem) e da chamada (destino) para as mensagens de solicitação e resposta.

Sobre o padrão de estacionamento

No padrão de estacionamento, os dados são armazenados em um estágio intermediário antes de concluir o processamento dos dados do estágio intermediário até o sistema final.
Aqui estão algumas das possíveis alternativas para armazenar os dados reais dentro do estacionamento. Cada opção tem propriedades diferentes que precisam ser consideradas:
  • A abordagem mais simples é armazenar dados como CLOB na forma XML. Este método adiciona alguns custos indiretos adicionais de escrita e leitura do CLOB, bem como de transformação entre o XML e o CLOB.
  • Você pode armazenar dados separadamente em outras tabelas com colunas totalmente realizadas. Esse método é mais apropriado se no aplicativo o processo de cancelamento de batch já estiver copiando o payload de entrada para um formato tabular na tabela do banco de dados. Para que o formato de dados possa ser aproveitado para o estacionamento.
  • Combine a mesa com o estacionamento em si. Embora essa solução possa ser a mais eficiente, ela só pode funcionar para estruturas de dados simples no estacionamento.

Sobre Resiliência

Antes de mergulhar no que tornará seu ambiente resiliente, primeiro você precisa definir o que a resiliência significa para você e sua empresa.

Em outras palavras, qual é o custo associado a uma interrupção de seus processos de integração. Para alguns clientes, uma interrupção de alguns minutos é perfeitamente aceitável e atrasará apenas parcialmente um processo em lote que é executado bem dentro de sua janela de processamento. Para outros, mesmo alguns segundos de interrupção resultam em perdas financeiras que têm um impacto direto nos negócios.

A partir dessa perspectiva, é importante olhar para os seguintes elementos:

  • Qual é a duração de uma interrupção aceitável em seu ambiente? Aqui você deve definir o custo para o negócio em caso de uma interrupção e descrever como essa interrupção evolui com a duração da interrupção.
  • Quais tecnologias são usadas e como elas podem cumprir o SLA esperado? Você está adotando uma abordagem em tempo real ou em lote? Ou uma combinação dos dois? Quantos dados você está processando?