[ad_1]
Se você está apenas começando ou se é um desenvolvedor MuleSoft experiente, obter os fluxos certos em seu aplicativo Mule pode ser complicado e difícil. Uma compreensão adequada dos tipos de fluxos e de como o escopo das variáveis e alterações de atributos depende da maneira como os fluxos são chamados é essencial para construir aplicativos Mule funcionais.
Este blog irá guiá-lo através dos tipos de fluxos, comportamento com o escopo de atributos, carga útil e variáveis.
Contents
- 1 Introdução aos tipos de fluxo no Mule
- 2 Chamando e observando os fluxos do Mule
- 3 Chamando Subfluxo do Fluxo Público
- 4 Chamando Fluxo Privado do Fluxo Público
- 5 Subfluxo de chamada de fluxo privado
- 6 Chamando o fluxo público de outro fluxo público
- 7 Chamar um fluxo filho por meio de uma solicitação HTTP
- 8 Resumo
Introdução aos tipos de fluxo no Mule
Um evento Mule contém as informações principais processadas pelo tempo de execução. Ele viaja pelos componentes dentro do seu aplicativo Mule seguindo a lógica do aplicativo configurado. Um evento Mule consiste em três componentes – carga útil, atributos e variável – conforme mostrado na figura abaixo.
Uma mensagem do Mule contém uma carga útil da mensagem e seus atributos associados. Variáveis são metadados de eventos do Mule que você pode usar em seu fluxo. Uma fonte de mensagem, como o componente Scheduler, HTTP Listener ou On New ou Updated File, aciona a geração de um evento Mule e despacha esse evento para o fluxo.
Para compreender o escopo das variáveis entre os fluxos, primeiro precisamos revisar os três tipos de fluxos com base nas seções de origem, processador e tratamento de erros. A tabela abaixo resume os tipos de fluxos:
Cada fluxo deve ter pelo menos uma unidade de processamento.
Fluxo (fluxo público) é um bloco de processamento de mensagens que possui seu próprio processamento e tratamento de exceções. Este fluxo é normalmente usado para conectar aplicativos, processamento de dados e eventos, etc.
Subfluxo herda a estratégia de processamento e a estratégia de tratamento de exceções do fluxo de chamada. Subfluxos são usados para modularizar o design geral do aplicativo Mule,
Fluxo privado tem sua própria estratégia de tratamento de exceções que permite definir diferentes perfis de threading.
Todos os três podem ser referenciados a partir de uma referência de fluxo.
Chamando e observando os fluxos do Mule
Para entender o funcionamento dos fluxos Mule, considere estes quatro cenários que usam o componente de referência de fluxo para chamar fluxos diferentes. O estado dos atributos, carga útil e variáveis será o parâmetro de foco em cada caso. A chave abaixo explica a terminologia usada para descrever o estado de cada um.
Agora que você entende os tipos de fluxos, vamos revisar os quatro cenários a seguir para observar o escopo das variáveis e atributos à medida que navegam pelas invocações de fluxo.
Chamando Subfluxo do Fluxo Público
O primeiro cenário é chamar o subfluxo do fluxo público usando um componente de referência de fluxo. A tabela abaixo resume as observações:
Observe que os atributos, carga útil e variáveis de Sub_Flow-2 são retornados para Public_Flow-2 e estão acessíveis lá.
Chamando Fluxo Privado do Fluxo Público
Usando o componente de referência de fluxo, o Public_Flow-2 agora chama private_Flow-2 conforme mostrado na imagem acima. A tabela abaixo resume as observações:
Os atributos do evento desta vez permanecem inalterados em todo o fluxo pai e o fluxo filho. No entanto, a carga útil e as variáveis são modificadas por causa dos componentes Definir carga útil e Definir variáveis no fluxo privado.
Subfluxo de chamada de fluxo privado
Com base no cenário dois, os atributos, carga útil e variáveis agora são passados para o Sub_Flow-2 conforme o fluxo privado chama o subfluxo usando o componente de referência de fluxo.
Os atributos modificados, carga útil e variáveis são retornados ao fluxo privado de onde o evento se move para o Public_Flow-2. Observe que o private_Flow-2 foi chamado do Public_Flow-2 e o Sub_Flow-2 foi chamado como parte do private_Flow-2.
Chamando o fluxo público de outro fluxo público
O último cenário neste aplicativo Mule é a chamada de Public_Flow-A do Public_Flow-2. As observações são as seguintes:
Os atributos, carga útil e variáveis de Public-Flow-A são retornados para Public_Flow-2, de onde o aplicativo atinge a execução completa.
Chamar um fluxo filho por meio de uma solicitação HTTP
Ao passar do fluxo pai para o fluxo filho usando a solicitação HTTP, os atributos e a carga útil são passados para o fluxo filho, mas as variáveis não são transmitidas, pois a solicitação HTTP tem apenas atributos e carga útil em seu corpo. Como uma variável não é passada, ela não pode ser acessada ou modificada no fluxo filho. Quando a chamada é retornada ao fluxo pai, novos atributos, carga útil modificada e variável (que não foi passada ao fluxo filho) podem ser acessados e modificados no fluxo pai.
Resumo
A principal diferença entre um componente de referência de fluxo e a solicitação HTTP é que a última não passa variáveis para o fluxo filho. Um componente de referência de fluxo permite que atributos, carga útil e variáveis sejam acessados no fluxo filho. Portanto, quaisquer modificações na carga útil e nas variáveis no fluxo filho também são refletidas no fluxo pai. Para obter detalhes adicionais, consulte a documentação.
[ad_2]