Você está construindo um fluxo de trabalho do Durable Functions que recebe uma lista de 50.000 URLs de imagem e deve extrair metadados EXIF para cada imagem em paralelo, e então retornar uma única lista agregada. O orquestrador deve permanecer determinístico e ser capaz de ser retomado corretamente após replays ou reinícios. O que você deve fazer na função de orquestrador para implementar o padrão fan-out/fan-in?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Iterar sobre as URLs, agendar cada atividade com CallActivityAsync`<T>`, coletar os objetos Task`<T>` retornados em uma lista, então aguardar Task.WhenAll(tasks) e agregar os resultados..
Por que esta é a resposta
A opção correta implementa o padrão fan-out/fan-in de forma determinística e resiliente. Iterar sobre as URLs e agendar cada atividade com CallActivityAsync<T cria tarefas independentes. Coletar essas tarefas em uma lista e usar Task.WhenAll(tasks) aguarda a conclusão de todas elas em paralelo, garantindo que o orquestrador permaneça determinístico e possa ser reidratado corretamente. Parallel.ForEach não deve ser usado em orquestradores Durable Functions, pois não é determinístico e pode causar problemas de replay. Invocar uma única atividade para processar todas as URLs não aproveita o paralelismo e pode levar a tempos limite. Chamar ContinueAsNew após cada atividade não é o uso pretendido para fan-out/fan-in e não agrega os resultados.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão