Você está construindo um sistema de inventário de estoque que deve manter uma contagem por item com alta concorrência e garantir que as atualizações para o mesmo item sejam serializadas. Vários clientes irão incrementar e decrementar o inventário e, ocasionalmente, ler a contagem atual. Quais duas ações você deve tomar usando Durable Functions?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Crie uma função Durable Entity (por exemplo, Inventory) que defina operações como AddStock e RemoveStock e mantenha o estado no contexto da entidade., A partir de uma função acionada por HTTP, construa um EntityId ("Inventory", itemId) e chame IDurableEntityClient.SignalEntityAsync para enviar atualizações; use ReadEntityStateAsync para consultar o estoque atual..
Por que esta é a resposta
Durable Entities são ideais para gerenciar estados com alta concorrência, como um inventário, pois fornecem serialização automática para operações no mesmo item, garantindo consistência. A entidade "Inventory" encapsularia a lógica de AddStock e RemoveStock. Para interagir com essa entidade, uma função acionada por HTTP pode usar IDurableEntityClient.SignalEntityAsync para enviar mensagens assincronamente (incrementar/decrementar) e ReadEntityStateAsync para consultar o estado atual. As opções incorretas são: IDurableOrchestrationClient.StartNewAsync não é apropriado para serializar atualizações por item, pois criaria uma nova orquestração para cada solicitação, sem garantir a serialização para o mesmo item. Dicionários estáticos em memória com bloqueios C não são duráveis e não escalam em um ambiente sem servidor como Azure Functions. Persistir no Table Storage com ETags exigiria mais lógica de tratamento de concorrência manual e não oferece a mesma abstração e garantia de serialização que Durable Entities.
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