Resumo
Neste módulo, você atualizou o design de um serviço de preço de ações de um modelo baseado em consulta para um modelo baseado em push. A meta era manter os clientes Web atualizados automaticamente assim que as alterações nos dados estivessem disponíveis.
Primeiro, você aprendeu sobre as limitações da solução existente, que buscava alterações no preço das ações conforme um cronograma. Em seguida, você substituiu a sondagem por uma solução baseada no Serviço do SignalR que envia atualizações por push aos clientes à medida que as alterações estão disponíveis. Por fim, a solução foi implantada na nuvem com o site estático hospedado no Armazenamento do Azure.
A solução usa o Azure Cosmos DB e o Azure Functions em combinação com o SignalR para detectar e transmitir alterações no banco de dados.
Com essa nova arquitetura de aplicativo, seu aplicativo aproveita os seguintes benefícios:
- Uma arquitetura de aplicativo Web eficiente, em que a comunicação entre o cliente e o servidor ocorre somente quando os dados são alterados.
- Detecção simples de alterações de dados usando o Azure Functions para ouvir o feed de alterações do Azure Cosmos DB por meio do gatilho do Azure Cosmos DB.
- Arquitetura server-push com ampla variedade de suporte para navegadores novos e antigos via SignalR.
- Tempo de resposta aprimorado e reduzido para pouco mais de meio segundo para atualizar automaticamente a interface do usuário.
Para verificar sua implementação, você pode referenciar as pastas de fim de cliente e de servidor ou exibir o código no GitHub.
Limpeza
O sandbox limpará automaticamente seus recursos quando você concluir este módulo.
Quando você estiver trabalhando em sua própria assinatura, é uma boa ideia, no final de um projeto, identificar se você ainda precisa dos recursos que criou. Recursos que você deixa em execução podem custar dinheiro. Você pode excluir recursos individualmente ou excluir o grupo de recursos para excluir todo o conjunto de recursos.
Saiba Mais
- Saiba mais sobre as associações de entrada do Azure Cosmos DB para o Azure Functions