Antes de enviar ou receber mensagens com o ApsaraMQ for Kafka, crie tópicos e grupos de consumidores na instância implantada. Os produtores enviam mensagens para os tópicos. Os consumidores leem mensagens dos tópicos por meio dos grupos de consumidores. Para que a leitura ocorra, o grupo de consumidores deve assinar os tópicos correspondentes. Um grupo de consumidores pode assinar vários tópicos, e um tópico pode atender a múltiplos grupos de consumidores.
Pré-requisitos
Antes de começar, verifique se você possui:
-
Uma instância do ApsaraMQ for Kafka adquirida e implantada
Etapa 1: Criar um tópico
Crie os tópicos na mesma região da instância do Elastic Compute Service (ECS) onde seus produtores e consumidores estão em execução. Não é possível usar tópicos entre regiões diferentes. Por exemplo, se sua instância ECS estiver na região China (Pequim), o tópico também deverá estar na região China (Pequim).
Faça login no console do ApsaraMQ for Kafka.
Na seção Resource Distribution da página Overview, selecione a região onde sua instância está implantada.
Na página Instances, clique em nome da sua instância.
No painel de navegação à esquerda, clique em Topics.
Na página Topics, clique em Create Topic.
-
No painel Create Topic, configure os parâmetros a seguir e clique em OK. Após a criação, o tópico aparecerá na página Topics.
**Parâmetro**
**Description**
**Exemplo**
Name
Nome do tópico.
demo
Description
Breve descrição do tópico.
teste demo
Partitions
Quantidade de partições.
12
Storage Engine
Tipo de mecanismo de armazenamento. Disponível apenas para instâncias Professional Edition. A Standard Edition usa Cloud Storage como padrão. Para mais detalhes, consulte a seção Opções de mecanismo de armazenamento abaixo.
Cloud Storage
Message Type
Comportamento de ordenação das mensagens. Determinado automaticamente pelo mecanismo de armazenamento. Para mais detalhes, consulte a seção Opções de tipo de mensagem abaixo.
Normal Message
Log Cleanup Policy
Necessário apenas quando o Storage Engine for Local Storage (Professional Edition). Para mais detalhes, consulte a seção Opções de política de limpeza de log abaixo.
Delete
Tag
Tags para associar ao tópico.
demo
O sistema cria automaticamente dois tópicos internos ao implantar uma instância: __alikafka_housekeeping_local_topic e __alikafka_housekeeping_cloud_topic. Não exclua esses tópicos. Para obter mais informações, consulte Descrição da inspeção.
Opções de mecanismo de armazenamento
Este parâmetro está disponível apenas para instâncias Professional Edition. Instâncias Standard Edition utilizam Cloud Storage por padrão.
Cloud Storage: Armazena mensagens em discos do Alibaba Cloud com três réplicas em modo distribuído. Oferece baixa latência, alto desempenho, alta durabilidade e alta confiabilidade. Se você definir a Instance Edition como Standard (High Write) durante a criação da instância, apenas o Cloud Storage estará disponível.
Local Storage: Utiliza o algoritmo de réplicas sincronizadas (ISR) do Apache Kafka open source. Armazena dados em três réplicas no modo distribuído.
Opções de tipo de mensagem
Normal Message: Mensagens com a mesma chave são armazenadas na mesma partição, seguindo a ordem de envio. Caso ocorra falha em um broker, a ordenação entre partições pode não ser preservada. Definido automaticamente quando o Storage Engine é Cloud Storage.
Partitionally Ordered Message: Mensagens com a mesma chave ficam na mesma partição, respeitando a ordem de envio. Se houver falha no broker, a ordenação é mantida, mas algumas partições ficarão indisponíveis até a recuperação. Configurado automaticamente quando o Storage Engine é Local Storage.
Opções de política de limpeza de log
Necessário apenas quando o Storage Engine for Local Storage (exclusivo da Professional Edition).
Delete (padrão): Retém mensagens com base no período máximo de retenção. Quando o uso do armazenamento ultrapassa 85%, o sistema remove as mensagens mais antigas para garantir a disponibilidade do serviço.
-
Compact: Aplica a política de compactação de log do Apache Kafka. Mantém somente o valor mais recente para cada chave de mensagem. Recomendado para componentes que armazenam estado ou dados de configuração, como Kafka Connect e Confluent Schema Registry. Para saber mais, acesse aliware-kafka-demos.
ImportanteTópicos com compactação de log têm suporte apenas para componentes cloud-native específicos, como Kafka Connect e Confluent Schema Registry.
Etapa 2: Criar um grupo de consumidores
Faça login no console do ApsaraMQ for Kafka.
Na seção Resource Distribution da página Overview, selecione a região onde sua instância está implantada.
Na página Instances, clique em nome da sua instância.
No painel de navegação à esquerda, clique em Groups.
Na página Groups, clique em Create Group.
No painel Create Group, insira um nome no campo Group ID e uma descrição no campo Description, anexe tags se necessário e clique em OK. O grupo de consumidores criado aparecerá na página Groups.
Próximos passos
Após criar tópicos e grupos de consumidores, utilize um SDK para produzir e consumir mensagens. Consulte Etapa 4: Usar um SDK para enviar e receber mensagens.
Tópicos relacionados
Para ativar a criação automática de recursos, consulte Criar tópicos automaticamente e Usar o recurso de criação flexível de grupos.
Para criar recursos programaticamente, veja as referências de API CreateTopic e CreateConsumerGroup.