Os subfluxos podem ser incluídos em seus fluxos de mensagens exatamente da
mesma maneira que você inclui nós integrados ou definidos pelo usuário.
Você também pode conectar subfluxos
a outros nós da mesma forma. Pode definir um subfluxo uma vez e utilizá-lo em mais de
um fluxo de mensagens (e até mesmo em mais de um projeto de fluxo de mensagens), para que
um subfluxo possa fornecer os seguintes benefícios:
- Capacidade de reutilização e tempo de desenvolvimento reduzido.
- Consistência e capacidade de manutenção aumentada de seus fluxos de mensagens (considere
um subfluxo como análogo a uma macro de programação ou ao código seqüencial que é gravado
uma vez mas utilizado em muitos locais).
- Flexibilidade para adaptar um subfluxo a um contexto específico (por exemplo, atualizando
informações da fila de saída ).
Entretanto,
lembre-se de que um subfluxo não é um nó único, e sua inclusão aumenta o número de nós no
fluxo de mensagens, o que poderá afetar seu desempenho.
Considere estes exemplos de utilização
de subfluxos:
- Você pode definir um subfluxo que fornece um
destino comum para mensagens que resultam em um erro dentro do fluxo
de mensagens.
Utilize o nó
Passthrough para
ativar o controle de versão de um subfluxo no tempo de execução. O nó
Passthrough
permite incluir um rótulo em seu fluxo de mensagens ou subfluxo. Combinando este rótulo com a substituição de palavra-chave de seu sistema de controle de versão, é possível identificar qual versão de um subfluxo está incluída em uma fluxo de mensagens implementado. É possível utilizar este rótulo para suas próprias finalidades. Se você tiver incluído as palavras-chave corretas no rótulo, é possível salvar o valor do rótulo:
- Armazenado no arquivo BAR (Broker Archive), utilizando o comando mqsireadbar
- Conforme implementado pela última vez em um intermediário específico, nas propriedades de um fluxo de mensagens implementado no Message
Brokers Toolkit
- No tempo de execução, se você ativar o rastreio do usuário para esse fluxo de mensagens
A
mensagem que ele propaga em seu terminal Out é a mesma recebida em seu
terminal In; por exemplo, se você desenvolver um subfluxo de processamento
de erro a ser incluído em vários fluxos de mensagens, será necessário modificar esse
subfluxo. No
entanto, convém introduzir a versão modificada, inicialmente, em apenas
um subconjunto dos fluxos de mensagens em que estiver incluído. Configure um valor para a instância
do nó
Passthrough que
identifique qual versão do subfluxo foi incluída.
A utilização de subfluxos
é demonstrada nas seguintes amostras:
A amostra Error Handler utiliza um subfluxo para captar informações sobre erros e armazenar as informações em um banco de dados. A amostra Coordinated Request Reply utiliza um subfluxo para encapsular o armazenamento dos valores ReplyToQ e ReplyToQMgr
em uma mensagem do
WebSphere MQ para que a lógica de processamento
possa ser facilmente reutilizada em outros fluxos de mensagens e permitir
que implementações alternativas sejam substituídas.
Você
pode visualizar amostras apenas quando utilizar o centro de informações integrado
ao Message
Brokers Toolkit.