Configurando o Armazenamento de Eventos para Nós de Tempo Limite

Você pode usar uma política do Timer para controlar o armazenamento de eventos para nós TimeoutNotification e TimeoutControl .

Sobre esta tarefa

As informações sobre o estado das mensagens em trânsito são mantidas em filas de armazenamento controladas pelo ` IBM® MQ `. As filas de armazenamento que contêm as informações de estado são de propriedade do gerenciador de filas associado ao servidor de integração.

Se você estiver usando os nós TimeoutControl e TimeoutNotification em um servidor de integração gerenciado por um nó de integração, será necessário instalar o IBM MQ no mesmo computador que o seu nó de integração para poder utilizar os recursos oferecidos por esses nós. Se você estiver usando os nós TimeoutControl e TimeoutNotification em um servidor de integração independente, poderá utilizar um gerenciador de filas padrão remoto para controlar as filas do sistema, sem a necessidade de instalar o IBM MQ na mesma máquina que o servidor de integração. As interações entre um servidor de integração independente e o ` IBM MQ ` podem utilizar uma conexão de cliente com um gerenciador de filas remoto, por meio de uma configuração de política padrão. Para obter mais informações sobre o uso de um gerenciador de fila padrão remoto, consulte Usando um gerenciador de filas padrão remoto e Configurando um servidor de integração para usar um gerenciador de filas padrão remoto

Se o servidor de integração tiver as permissões necessárias para criar as filas do sistema padrão, elas são criadas automaticamente quando um fluxo contendo nós TimeoutControl ou TimeoutNotification é implementado. Se as filas padrão não forem criadas automaticamente, você pode criá-las manualmente executando o iib_createqueues comando, conforme descrito em Criação das filas padrão do sistema em um gerenciador de filas do IBM MQ.

Por padrão, a fila de armazenamento utilizada por todos os nós de tempo limite é SYSTEM.BROKER.TIMEOUT.QUEUE. No entanto, é possível controlar as filas que são usadas por diferentes nós de tempo limite, criando filas alternativas que contêm uma variável QueuePrefix e usando uma política Cronômetro para especificar os nomes dessas filas para armazenar eventos.

Siga estas etapas para especificar a fila que é utilizada para armazenar estados de eventos:

Procedimento

  1. Crie a fila de armazenamento que será utilizada pelos nós de tempo limite.
    A seguinte fila é necessária:
    • SISTEMA.BROKER.TIMEOUT. QueuePrefix .FILA

    A variável ` QueuePrefix ` pode conter quaisquer caracteres válidos em um nome de fila do ` IBM MQ `, mas não deve ter mais de oito caracteres e não deve começar ou terminar com um ponto (.). Por exemplo, SET1 e SET.1 são prefixos de fila válidos, mas .SET1 e SET1. são inválidos.

    Se você não criar a fila de armazenamento, o ` IBM App Connect Enterprise ` criará a fila quando o nó for implantado; essa fila é baseada na fila padrão. Se a fila não puder ser criada, o fluxo de mensagens não serão implementados.

  2. Crie uma política de temporizador (consulte “Criação de políticas com o Kit de Ferramentas do IBM App Connect Enterprise ”).
    1. É possível criar uma política para ser usada com solicitações de tempo limite específicas ou com todas as solicitações de tempo limite em um servidor de integração. Se a política deve ser usada com solicitações de tempo limite específicas, crie a política com o mesmo nome da propriedade Identificador Unique nos nós TimeoutNotification e TimeoutControl .

      Para especificar uma política de cronômetro padrão para todos os fluxos de mensagens que são implementados em um servidor de integração, configure a propriedade Timer no arquivo server.conf.yaml para o nome de uma política de cronômetro. Para obter informações sobre como configurar propriedades no arquivo server.conf.yaml , consulte Configurando um servidor de integração modificando o arquivo server.conf.yaml.. Se a política padrão estiver no projeto de política padrão, você não precisará especificar o nome do projeto de política. Se a política padrão estiver em um projeto de política não padrão, qualifique o nome da política com o nome do projeto de política no formato {policyProjectName}:PolicyName.

    2. Configure a propriedade Queue prefix da política Cronômetro para o valor necessário (consulte Política do Cronômetro).
    Se você exclui a política Cronômetro, a fila de armazenamento não é excluída automaticamente quando a política é excluída, portanto deve-se excluí-la separadamente.
  3. Nos nós TimeoutNotification e nós TimeoutControl , certifica-se de que o nome da política do Timer é o mesmo que o nome especificado na propriedade Unique Identifier na guia Basic ; por exemplo, myTimer. Especifique o nome do projeto de política e a política no nó do fluxo de mensagens no formato {policyProjectName}:PolicyName. Se não houver uma política do Timer com o mesmo nome do Identificador Único, e se houver uma política timer padrão especificada no arquivo server.conf.yaml , essa política do Timer é usada em vez disso.

O que fazer em seguida

As propriedades para a política não são usadas pelo servidor de integração até que você reinicie ou reimplemente o fluxo de mensagens ou reinicie o servidor de integração.