Introdução
Seguindo a nossa série sobre como utilizar o Redis no Azure, neste artigo salvaremos um objeto complexo ao invés de uma simples string utilizando a Interface IDistributedCache.
Como exemplo, vamos utilizar a API da NASA que nos fornece uma foto nova do espaço todo dia. Caso tenha perdido o artigo anterior, ele pode ser acessado através deste link.
Vale lembrar que, caso você ainda não tenha uma subscription no Azure, será necessário criar uma (caso queira um passo a passo, clique aqui).
NASA API
Conforme mencionado na introdução, neste artigo vamos utilizar a API da NASA como exemplo. Entretanto, a API possui uma série de limitações quanto ao numero de acessos, e obviamente não queremos que alguém acesse nosso site e encontre uma mensagem de erro – é aí que o Redis passa a ser fundamental para a aplicação.
Através dele vamos criar um cache do objeto retornado pela API, que terá como validade apenas o dia atual, expirando na sequência para que o conteúdo seja atualizado.
Sendo assim, primeiramente, caso você ainda não tenha acesso a API da NASA, clique aqui e faça seu cadastro (Free) para receber uma chave de acesso.
Feito isso, vamos consumir a API para coletar os dados que ele vai nos fornecer e salvar o conteúdo no nosso cache para garantir que ele esteja sempre disponível.
Todo o código da aplicação está disponível no meu GitHub e está devidamente comentado para melhor entendimento.
Redis on Azure
Caso ainda não tenha uma instância do Redis no Azure, será necessário criar uma. No link do meu artigo anterior, temos um passo a passo bastante detalhado caso seja necessário.
Publicando no Azure
Agora, como último passo, vamos publicar nossa aplicação e vê-la em pleno funcionamento. Isso, graças a facilidade que o Azure, juntamente com Visual Studio nos oferece. E acredite, será a parte mais simples de se fazer.
Primeiramente clicaremos com o botão direito em nossa solution, e em seguida em Publish > Publish to Azure, conforme nos mostra a imagem abaixo:
Feito isso, vamos criar nosso App Service no Azure, então primeiramente forneça um nome para sua aplicação (lembrando que esse nome é único). Depois, selecione sua subscription do Azure, selecione ou crie um novo Resource Group e selecione também o Service Plan, lembrando que essa última opção refere-se a “configuração” da máquina que você deseja hospedar a sua aplicação (note na figura 2, abaixo, que eu selecionei a versão Free que o Azure oferece) e depois clique em Create.
Após a criação dos serviços (em torno de três minutos), selecione o App Service que você acabou de criar e clique em Publish, conforme a figura abaixo:
Após o termino da publicação da sua aplicação, acesse a mesma através do browser (deixarei a minha disponível pra quem quiser acessar: https://nasaapicahe.azurewebsites.net/api/nasaapi), depois de você acessar sua aplicação pela primeira vez, acesse também o Redis através do Portal do Azure ou de qualquer outra ferramenta de sua preferência.
Note que o nosso cache estará salvo lá, conforme nos mostra a figura 4:
Agora, até o final do dia todos os seus Requests virão do conteúdo armazenado no cache do Redis, e assim finalizo a série Redis on Azure. Espero que tenham gostado e até a próxima.
Obrigado!