Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-05-31 GMT+08:00

Especificações

Especificações da instância do Kafka

As instâncias do Kafka são compatíveis com o Kafka de código aberto Kafka v1.1.0 e v2.7. As especificações da instância são classificadas com base na variante ECS, incluindo kafka.2u4g.cluster.small, kafka.2u4g.cluster, kafka.4u8g.cluster, kafka.8u16g.cluster, kafka.12u24g.cluster e kafka.16u32g.cluster.

Na tabela a seguir, as transações por segundo (TPS) são calculadas assumindo que o tamanho de uma mensagem é de 1 KB. Para obter detalhes sobre o desempenho do TPS, consulte Cenários de teste.

Tabela 1 Especificações de instância do Kafka

Flavor

Brokers

Máximo de TPS por broker

Máximo de partições por broker

Máximo de grupos de consumidores por broker

Máximo de conexões de clientes por broker

Espaço de armazenamento

Tráfego por broker (MB/s)

kafka.2u4g.cluster.small

3–30

20.000

100

15

2000

300 GB–300.000 GB

40

kafka.2u4g.cluster

3–30

30.000

250

20

2000

300 GB–300.000 GB

100

kafka.4u8g.cluster

3–30

100.000

500

100

4000

300 GB–600.000 GB

200

kafka.8u16g.cluster

3–50

150.000

1000

150

4000

300 GB–1.500.000 GB

250

kafka.12u24g.cluster

3–50

200.000

1500

200

4000

300 GB–1.500.000 GB

375

kafka.16u32g.cluster

3–50

250.000

2000

200

4000

300 GB–1.500.000 GB

500

Especificações de instância e largura de banda de rede

A largura de banda de rede de uma instância do Kafka consiste no seguinte:

  1. Largura de banda da rede usada pelos brokers da instância
  2. Largura de banda do disco usado pelos brokers da instância. Para obter detalhes, consulte Tipos de disco e desempenho.

Observação:

  • Por padrão, os testes do Kafka são executados no cenário de leitura traseira (ou seja, apenas os dados de produção mais recentes são consumidos) em vez do cenário de leitura a frio (ou seja, os dados históricos são consumidos desde o início).
  • A largura de banda de uma instância com um flavor antigo (como 100 MB/s) é a largura de banda total da rede de todos os brokers da instância.

O cálculo de tráfego de instâncias com novos flavors (como kafka.2u4g.cluster) é descrito da seguinte forma:

  • A taxa de leitura/gravação é de 1:1.
  • O número padrão de réplicas de tópicos é 3.
  • Total de tráfego de rede = tráfego por broker x quantidade de broker
  • Tráfego total de instâncias = tráfego de serviço + tráfego de replicação de dados entre brokers

Suponha que o flavor atual seja kafka.2u4g.cluster, o tráfego por broker seja 100 MB/s e o número de brokers seja 3. Qual é o tráfego total da rede, o tráfego máximo de leitura e o tráfego máximo de gravação da instância?

  1. Tráfego total da rede = tráfego por broker x quantidade de broker = 100 MB/s x 3 = 300 MB/s
  2. Tráfego máximo de leitura = tráfego de rede total da instância/número padrão de réplicas/2 = 300 MB/s/3/2 = 50 MB/s
  3. Tráfego máximo de gravação = tráfego de rede total da instância/número padrão de réplicas/2 = 300 MB/s/3/2 = 50 MB/s

Mapeamento entre flavors anteriores e novos

Tabela 2 compara os sabores de instância anteriores e novos do Kafka a preços semelhantes.

Tabela 2 Mapeamento entre flavors de instância anteriores e novos do Kafka

Flavor anterior

Flavor novo

Especificações

Máximo de partições

Tráfego de rede de instância total

Especificações

Máximo de partições

Tráfego de rede de instância total

100 MB/s

300

100 MB/s

kafka.2u4g.cluster x 3

750

300 MB/s

300 MB/s

900

300 MB/s

kafka.4u8g.cluster x 3

1500

600 MB/s

600 MB/s

1800

600 MB/s

kafka.8u16g.cluster x 4

4000

1000 MB/s

1200 MB/s

1800

1200 MB/s

kafka.8u16g.cluster x 8

8000

2000 MB/s

As seguintes conclusões podem ser tiradas da tabela anterior:

  • Novos flavors proporcionam melhor desempenho ao mesmo preço.
  • Flavors anteriores usam recursos não exclusivos. Se a carga for pesada, ocorrerão conflitos de recursos. Em contraste, os novos flavors usam recursos exclusivos para que eles forneçam melhor desempenho e custo-benefício.
  • Instâncias com novos flavors suportam as funções mais recentes. Por exemplo, o flavor do broker pode ser ajustado dinamicamente para lidar melhor com mudanças complexas de serviço.

Seleção de flavor

  • kafka.2u4g.cluster.small com 3 brokers

    Recomendado para até 6000 conexões de clientes, 45 grupos de consumidores e 60.000 TPS

  • kafka.2u4g.cluster com 3 brokers

    Recomendado para até 6000 conexões de clientes, 60 grupos de consumidores e 90.000 TPS

  • kafka.4u8g.cluster com 3 brokers

    Recomendado para até 12.000 conexões de clientes, 300 grupos de consumidores e 300.000 TPS

  • kafka.8u16g.cluster com 3 brokers

    Recomendado para até 12.000 conexões de clientes, 450 grupos de consumidores e 450.000 TPS

  • kafka.12u24g.cluster com 3 brokers

    Recomendado para até 12.000 conexões de clientes, 600 grupos de consumidores e 600.000 TPS

  • kafka.16u32g.cluster com 3 brokers

    Recomendado para até 12.000 conexões de clientes, 600 grupos de consumidores e 750.000 TPS

Seleção de espaço de armazenamento

As instâncias do Kafka suportam o armazenamento de múltiplas réplicas. O espaço de armazenamento é consumido por todas as réplicas. Ao criar uma instância, especifique seu espaço de armazenamento com base no tamanho esperado da mensagem de serviço e no número de réplicas.

Por exemplo, se o tamanho estimado da mensagem for de 100 GB, a capacidade do disco deverá ser pelo menos: 100 GB x número de réplicas + 100 GB (espaço reservado).

O espaço de armazenamento pode ser expandido à medida que seu serviço cresce.

Quantidade de tópico

Há limites na quantidade de tópicos e no número agregado de partições nos tópicos. Quando o limite de quantidade de partição é atingido, você não pode mais criar tópicos.

O número de tópicos está relacionado ao número máximo de partições permitidas (consulte Figura 1) e ao número especificado de partições em cada tópico (consulte Tabela 1).

Figura 1 Definir o número de partições

O número máximo de partições permitidas para uma instância com kafka.2u4g.cluster e 3 brokers é 750.

  • Se o número de partições de cada tópico na instância for 3, o número máximo de tópicos será 750/3 = 250.
  • Se o número de partições de cada tópico na instância for 1, o número máximo de tópicos será 750/1 = 750.