Conectar-se a um servidor do IBM MQ a partir de um fluxo de trabalho dos Aplicativos Lógicos do Azure

O conector do MQ ajuda você a conectar os fluxos de trabalho de aplicativo lógico a um servidor do IBM MQ localmente ou no Azure. Em seguida, você pode fazer com que seus fluxos de trabalho recebam e enviem mensagens armazenadas no servidor MQ. Este artigo fornece um guia de introdução para usar o conector do MQ, mostrando como se conectar ao servidor MQ e adicionar uma ação do MQ ao fluxo de trabalho. Você pode, por exemplo, começar procurando uma única mensagem em uma fila e em seguida experimentar outras ações.

Esse conector inclui um cliente do Microsoft MQ que se comunica com um servidor MQ remoto em uma rede TCP/IP. Você pode se conectar às seguintes versões do IBM WebSphere MQ:

  • MQ 7.5
  • MQ 8.0
  • MQ 9.0, 9.1 e 9.2

Operações Disponíveis

  • Aplicativo lógico de consumo: você só pode se conectar a um servidor MQ usando o conector MQ gerenciado. Esse conector fornece apenas ações, e não gatilhos.

  • Aplicativo lógico Standard: você pode se conectar a um servidor MQ usando o conector MQ gerenciado, que inclui apenas ações ou as operações de MQ internas, que incluem gatilhos e ações.

Para obter mais informações sobre a diferença entre um conector gerenciado e as operações internas, revise os principais termos dos Aplicativos Lógicos.

A lista a seguir descreve apenas algumas das operações gerenciadas disponíveis para MQ:

  • Procurar uma única mensagem ou uma matriz de mensagens sem excluí-las do servidor MQ. Para várias mensagens, você pode especificar o número máximo de mensagens a retornar por lote. Caso contrário, serão retornadas todas as mensagens.
  • Exclua uma única mensagem ou uma matriz de mensagens do servidor MQ.
  • Receba uma única mensagem ou uma matriz de mensagens e em seguida as exclua do servidor MQ.
  • Envie uma única mensagem ao servidor do IBM MQ.

Para todas as operações de conector gerenciado e outras informações técnicas, como propriedades, limites e assim por diante, consulte a Página de referência do conector do MQ.

Limitações

  • O conector MQ não dá suporte a mensagens segmentadas.

  • O conector do MQ não usa o campo de Formato da mensagem e não faz conversões de conjuntos de caracteres. O conector apenas inclui os dados exibidos no campo de mensagem em uma mensagem JSON e envia a mensagem.

Pré-requisitos

  • Uma conta e uma assinatura do Azure. Se você não tiver uma assinatura do Azure, inscreva-se em uma conta gratuita do Azure.

  • Se você estiver usando um servidor MQ local, instale o gateway de dados local em um servidor dentro de sua rede. Para que o conector do MQ funcione, o servidor com o gateway de dados local também precisa ter o .NET Framework 4.6 instalado.

    Após instalar o gateway, você ainda precisa criar um recurso de gateway de dados no Azure. O conector do MQ usa esse recurso para acessar o servidor MQ. Para mais informações, confira Configurar a conexão do gateway de dados.

    Observação

    Você não precisará do gateway nos seguintes cenários:

    • Você vai usar as operações internas, e não o conector gerenciado.
    • O servidor MQ está disponível publicamente ou no Azure.
  • O fluxo de trabalho do aplicativo lógico que você deseja acessar o servidor MQ. O recurso do aplicativo lógico deve ter o mesmo local que o recurso de gateway no Azure.

    O conector do MQ não tem nenhum gatilho, portanto, ou o fluxo de trabalho já deve começar com um gatilho, ou você precisará primeiro adicionar um gatilho ao fluxo de trabalho. É possível, por exemplo, usar o Gatilho de recorrência.

    Se você não estiver familiarizado com os Aplicativos Lógicos do Azure, experimente este guia de início rápido para criar um exemplo de fluxo de trabalho de aplicativo lógico, que é executado no serviço de aplicativos lógicos de multilocatários.

Criar uma conexão do MQ

Ao adicionar uma ação do MQ pela primeira vez, você será solicitado a criar uma conexão com o servidor MQ.

Observação

O conector do MQ atualmente dá suporte apenas à autenticação do servidor, não autenticação do cliente. Para saber mais, confira Problemas de conexão e autenticação.

  1. Se você estiver se conectando a um servidor MQ local, selecione Conectar por meio do gateway de dados local.

  2. Forneça as informações de conexão para seu servidor MQ.

    Propriedade Local ou no Azure Descrição
    Gateways Somente no local Selecione Conectar por meio do gateway de dados local.
    Nome da conexão Ambos O nome a usar para a conexão
    Servidor Ambos Qualquer um dos seguintes valores:

    - Nome do host do servidor MQ
    - Endereço IP seguido por dois-pontos e o número da porta

    Nome do Gerenciador de Filas Ambos O Gerenciador de Fila que você deseja usar
    Nome do canal Ambos O canal para se conectar ao Gerenciador de Filas
    Nome de fila padrão Ambos O nome padrão da fila
    Conectar como Ambos O nome de usuário para se conectar ao servidor MQ
    Nome de usuário Ambos Credencial de nome de usuário
    Senha Ambos Credencial de senha
    Habilitar SSL? Somente no local Usar segurança de camada de transporte (TLS) ou camada de soquete seguro (SSL)
    Gateway - Assinatura Somente no local A assinatura do Azure ao seu recurso de gateway no Azure
    Gateway - Gateway de conexão Somente no local O recurso de gateway a ser usado

    Por exemplo:

    Screenshot showing the managed MQ connection details.

  3. Quando terminar, selecione Criar.

Adicionar uma ação do MQ

Nos Aplicativos Lógicos do Azure, uma ação segue um gatilho ou outra ação e executa alguma operação em seu fluxo de trabalho. As etapas a seguir descrevem a maneira usual de adicionar uma ação, por exemplo, Procurar uma única mensagem.

  1. No designer de aplicativos lógicos, abra o seu fluxo de trabalho, se ainda não estiver aberto.

  2. Em gatilho ou outra ação, adicione uma nova etapa.

    Para adicionar uma ação entre etapas existentes, mova o mouse sobre a seta. Selecione o sinal de adição (+) que aparece e então selecione Adicionar uma ação.

  3. Na caixa de pesquisa de operações, digite mq. Na lista de ações, selecione a ação chamada Procurar mensagem.

  4. Se você for solicitado a criar uma conexão com o servidor MQ, forneça as informações de conexão solicitadas.

  5. Em ação, forneça os valores de propriedade necessários à ação.

    Para especificar propriedades adicionais, abra a lista Adicionar novo parâmetro e selecione os parâmetros que você deseja adicionar.

  6. Quando terminar, selecione Salvar na barra de ferramentas do designer.

  7. Para testar o fluxo de trabalho, selecione Executar na barra de ferramentas do designer.

    Após a conclusão da execução, o designer mostra o histórico de execução do fluxo de trabalho junto com o status da etapa.

  8. Para examinar as entradas e saídas de cada etapa executada (não ignorada), expanda ou selecione a etapa.

    • Para examinar mais detalhes de entrada, selecione Mostrar entradas brutas.
    • Para examinar mais detalhes de saída, selecione Mostrar saídas brutas. Se você definir IncludeInfo como true, será adicionada uma quantidade maior à saída.

Solução de problemas

Falhas em ações de procura ou recebimento

Se você executar uma ação de navegação ou recebimento em uma fila vazia, a ação falhará com as seguintes saídas de cabeçalho:

MQ

Problemas de conexão e autenticação

Quando o fluxo de trabalho tentar se conectar ao servidor MQ local, você poderá receber o seguinte erro:

"MQ: Could not Connect the Queue Manager '<queue-manager-name>': The Server was expecting an SSL connection."

  • Se você estiver usando o conector do MQ diretamente no Azure, o servidor MQ precisará usar um certificado emitido por uma autoridade de certificação confiável.

  • O servidor MQ requer que você defina a especificação de criptografia que deseja usar para conexões TSL. No entanto, para fins de segurança e para incluir os melhores conjuntos de segurança, o sistema operacional Windows envia um conjunto de especificações de criptografia com suporte.

    O sistema operacional em que o servidor MQ é executado escolhe os conjuntos a usar. Para fazer a correspondência de configuração, você precisa alterar a configuração do servidor MQ para que a especificação de criptografia corresponda à opção escolhida na negociação de TLS.

    Quando você tenta conectar, o servidor MQ registra uma mensagem de evento que indica que a conexão falhou porque a outra extremidade usou a especificação de criptografia incorreta. A mensagem de evento contém a especificação de criptografia que o servidor MQ escolheu na lista. Atualize a especificação de criptografia na configuração do canal para que corresponda à especificação de criptografia na mensagem do evento.

Referência de conector

Para todas as operações de conector gerenciado e outras informações técnicas, como propriedades, limites e assim por diante, consulte a Página de referência do conector do MQ.

Próximas etapas