Questão 66 Comentada - Ministério da Fazenda (MF) - Auditor Federal de Finanças e Controle - Área de Tecnologia da Informação (Operação e Infraestrutura) - manhã - FGV (2024)

O padrão Publish/Subscribe é comumente utilizado em sistemas de computação distribuídos e em arquiteturas de barramento de mensagem.


Uma característica desse padrão é que o produtor de eventos deve

  • A aguardar acumular ao menos 10 eventos antes de começar a enviá-los.
  • B enviar eventos somente quando o consumidor de eventos solicitar.
  • C aguardar uma confirmação do consumidor de eventos para enviar eventos adicionais.
  • D enviar os eventos independentemente da quantidade de consumidores de eventos.
  • E especificar como o consumidor de eventos deve agir para processar o evento.

Gabarito comentado da Questão 66 - Ministério da Fazenda (MF) - Auditor Federal de Finanças e Controle - Área de Tecnologia da Informação (Operação e Infraestrutura) - manhã - FGV (2024)

A alternativa correta é a D - enviar os eventos independentemente da quantidade de consumidores de eventos.

Vamos entender o motivo dessa resposta e analisar as demais opções. Primeiramente, o padrão Publish/Subscribe (ou Pub/Sub) é amplamente utilizado em sistemas de computação distribuídos e em arquiteturas de barramento de mensagem. Este padrão permite que produtores de eventos (publishers) e consumidores de eventos (subscribers) interajam de forma desacoplada, ou seja, sem que um precise conhecer diretamente o outro.

D está correta porque, no padrão Pub/Sub, o produtor de eventos (publisher) envia mensagens para um sistema intermediário (barramento de mensagens ou broker) sem se preocupar com a quantidade de consumidores (subscribers) que irão receber essas mensagens. Esse sistema intermediário se encarrega de distribuir os eventos para todos os assinantes interessados. Portanto, o produtor não precisa aguardar ou saber quantos consumidores existem antes de enviar os eventos.

Agora, vamos analisar por que as outras alternativas estão incorretas:

A - aguardar acumular ao menos 10 eventos antes de começar a enviá-los. Incorrreta: No padrão Pub/Sub, não há uma exigência de acumular um número específico de eventos antes de enviá-los. Os eventos são enviados conforme são gerados pelo produtor, sem necessidade de atingir um limite mínimo.

B - enviar eventos somente quando o consumidor de eventos solicitar. Incorreta: Uma característica fundamental do padrão Pub/Sub é que o envio de eventos é independente de solicitações dos consumidores. Os produtores enviam os eventos para o broker, que então redistribui para os consumidores inscritos.

C - aguardar uma confirmação do consumidor de eventos para enviar eventos adicionais. Incorreta: No padrão Pub/Sub, os produtores não esperam confirmações dos consumidores para continuar enviando eventos. O propósito do broker é gerenciar a entrega dos eventos aos consumidores, e não controlar o fluxo de acordo com confirmações.

E - especificar como o consumidor de eventos deve agir para processar o evento. Incorreta: No padrão Pub/Sub, os produtores (publishers) não instruem os consumidores (subscribers) sobre como processar os eventos. Os consumidores têm autonomia para decidir como processar os eventos que recebem, sendo essa uma das grandes vantagens do desacoplamento proporcionado pelo padrão.