Todos os produtos
Search
Central de documentação

Function Compute:Triggers do Apache RocketMQ autogerenciado

Última atualização: Jun 29, 2026

Conecte um cluster Apache RocketMQ autogerenciado ao Function Compute por meio do EventBridge para processar mensagens com código de função personalizado. Quando as mensagens chegam ao seu tópico do RocketMQ, o trigger invoca automaticamente sua função, passando uma ou mais mensagens por invocação conforme a configuração de lote definida.

Como funciona

Ao criar um trigger no Function Compute, o serviço gera automaticamente um fluxo de eventos correspondente no EventBridge com base na sua configuração. Visualize os detalhes do trigger no console do Function Compute e os recursos criados automaticamente no console do EventBridge.

Pré-requisitos

Antes de começar, verifique se você possui:

Limitações

  • A instância do RocketMQ deve ser acessível pela internet pública ou por uma VPC da Alibaba Cloud.

  • Caso o acesso à instância ocorra via VPC, ela deve estar na mesma região da sua função. Certifique-se de que o grupo de segurança permita tráfego de entrada na porta do NameServer do RocketMQ (padrão: 9876).

  • A quantidade de triggers do RocketMQ está limitada pela cota de fluxos de eventos do EventBridge. Para mais detalhes, consulte Limites.

Etapa 1: Crie um trigger

  1. Faça login no console do Function Compute. No painel de navegação à esquerda, clique em Functions.

  2. Na barra de navegação superior, selecione uma região. Na página Functions, clique em na função que deseja gerenciar.

  3. Na página de detalhes da função, clique em na aba Trigger e, em seguida, clique em Create Trigger.

  4. No painel Create Trigger, configure os parâmetros descritos na tabela a seguir e clique em OK.

Parâmetro

Descrição

Obrigatório

Padrão

Exemplo

Trigger type

Selecione Self-built Apache RocketMQ.

Sim

Self-built Apache RocketMQ

Name

Insira um nome para o trigger.

Sim

apache-rocketmq-trigger

Version or alias

Versão ou alias da função a ser associada ao trigger. Para usar uma versão ou alias específico, alterne para ele primeiro na página de detalhes da função. Consulte Gerenciar versões e Gerenciar aliases.

Não

LATEST

LATEST

Endpoint

Endereço do NameServer do seu cluster RocketMQ.

Sim

192.168.X.X:9876

Topic

Tópico na sua instância do RocketMQ de onde as mensagens serão consumidas.

Sim

testTopic

Group ID

ID do grupo de consumidores na sua instância do RocketMQ.

Sim

testGroup

Filter type

Método de filtragem de mensagens: Tag filtra por tag; SQL filtra por uma expressão SQL que corresponde às propriedades e valores da mensagem.

Sim

Tag

Filter

Expressão de filtro correspondente ao tipo de filtro selecionado.

Sim

TagA

Authentication mode

Modo de autenticação. Apenas ACL é suportado.

Sim

ACL

Username

Nome de usuário ACL. Obrigatório quando o Authentication mode for ACL.

Sim

admin

Password

Senha ACL. Obrigatória quando o Authentication mode for ACL.

Sim

Consumer offset

Ponto inicial para consumo de mensagens: Latest offset começa pela mensagem mais recente; Earliest offset começa pela mensagem mais antiga; Timestamp inicia a partir de um ponto específico no tempo.

Sim

Latest offset

Networking

Tipo de rede para conexão com o cluster RocketMQ: Internet acessa o cluster pela internet pública; VPC acessa o cluster através de uma VPC (requer seleção da VPC, vSwitch e grupo de segurança).

Sim

Internet

Invocation method

Forma como o trigger invoca sua função: Sync invocation aguarda a conclusão da função e retorna o resultado (consulte Invocações síncronas); Async invocation retorna imediatamente sem esperar pelo resultado, ideal para funções de longa duração (consulte Visão geral da invocação assíncrona).

Não

Sync invocation

Sync invocation

Trigger state

Defina se o trigger será ativado imediatamente após a criação.

Não

Enabled

Enabled

Para configurações avançadas, como push configurations, políticas de repetição e filas de mensagens mortas, consulte Recursos avançados de triggers.

Após a criação, o trigger aparece na aba Triggers. Para modificá-lo ou excluí-lo, consulte Gerenciar triggers.

Etapa 2: Configure um evento de teste

O trigger passa as mensagens do RocketMQ para sua função como um array de objetos de evento. Simule uma invocação do trigger configurando manualmente um evento de teste.

  1. Na aba Code da página de detalhes da função, clique em no ícone image.png ao lado de Test Function e selecione Configure Test Parameters.

  2. No painel Configure Test Parameters, selecione Create new test event ou Modify existing test event. Insira um nome para o evento, cole o conteúdo do evento abaixo e clique em OK.

[
  {
    "msgId": "7F0000010BDD2A84AEE70DA49B57****",
    "topic": "testTopic",
    "systemProperties": {
      "UNIQ_KEY": "7F0000010BDD2A84AEE70DA49B57****",
      "CLUSTER": "DefaultCluster",
      "MIN_OFFSET": "0",
      "TAGS": "TagA",
      "MAX_OFFSET": "128"
    },
    "userProperties": {},
    "body": "Hello RocketMQ"
  }
]

Cada objeto no array representa uma mensagem do RocketMQ. Os campos são descritos abaixo.

Campo

Tipo

Descrição

Exemplo

msgId

String

ID da mensagem atribuído pelo Apache RocketMQ.

7F0000010BDD2A84AEE70DA49B57****

topic

String

Nome do tópico.

testTopic

systemProperties

Map

Propriedades de nível de sistema definidas pelo RocketMQ.

systemProperties.UNIQ_KEY

String

Chave única da mensagem.

7F0000010BDD2A84AEE70DA49B57****

systemProperties.CLUSTER

String

Nome do cluster RocketMQ.

DefaultCluster

systemProperties.MIN_OFFSET

Integer

Offset mínimo na fila do tópico.

0

systemProperties.MAX_OFFSET

Integer

Offset máximo na fila do tópico.

128

systemProperties.TAGS

String

Tag de filtro aplicada à mensagem.

TagA

userProperties

Map

Propriedades personalizadas definidas pelo produtor da mensagem.

{}

body

String

Corpo da mensagem.

Hello RocketMQ

Etapa 3: Escrever e testar o código da função

Após criar o trigger, escreva o código da função para processar as mensagens recebidas. Em produção, o trigger invoca automaticamente a função quando o RocketMQ recebe uma nova mensagem.

  1. Na aba Code da página de detalhes da função, escreva seu código no editor e clique em Deploy. O exemplo Node.js a seguir lê o evento e retorna um resultado:

    'use strict';
    /*
    To enable the initializer feature,
    implement the initializer function as shown below:
    exports.initializer = (context, callback) => {
      console.log('initializing');
      callback(null, '');
    };
    */
    exports.handler = (event, context, callback) => {
      console.log("event: %s", event);
      // Parse the event and process each message.
      callback(null, 'return result');
    }
  2. Clique em Test Function para executar o evento de teste configurado na etapa anterior.

Próximos passos

Além do console do Function Compute, configure e gerencie triggers utilizando:

Para modificar ou excluir um trigger existente, consulte Gerenciar triggers.