Apresentação sobre o desenvolvimento de APIs REST para a nuvem, utilizando o Microsoft Azure e o ASP.NET Core. Conteúdo utilizado durante palestra realizada no Azure Weeked 2016, em 25/11/2016.
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
APIs na nuvem com Azure e ASP.NET Core - Azure Weekend 2016
1. ASP.NET Core e Azure
DESENVOLVENDO UMA API REST PARA A NUVEM
2. Renato Groffe
◦ Microsoft Most Valuable Professional
◦ Microsoft Technical Audience Contributor (MTAC)
◦ Mais de 15 anos de experiência na área de Tecnologia
◦ Articulista e Palestrante
3. Agenda
◦ Web APIs: alguns conceitos básicos
◦ Quais tecnologias utilizar para uma API na nuvem?
◦ Exemplos práticos
5. O que é uma Web API?
◦ Componente de software acessível de forma remota
◦ Emprega o padrão HTTP para comunicação
◦ Integração entre sistemas de diferentes plataformas
◦ Reaproveitamento de código
◦ Utlização do modelo REST
6. O modelo REST
◦ Baseado no conceito de recurso e no uso de requisições HTTP
◦ Recurso → elemento (conjunto de dados) representando um
item de negócio
◦ Utilização de JSON ou XML para representação dos dados
◦ RESTful Web Services → serviços que seguem esta arquitetura
8. Por que a nuvem?
◦ Priorizar negócio, ao invés de somente a tecnologia
◦ Escalabilidade para atender a demandas crescentes
◦ Aumento de produtividade, eficiência e redução de custos
10. ASP.NET Core
◦ Multiplataforma (Windows, Linux, Mac)
◦ Completamente reescrito
◦ Arquitetura mais enxuta e modular
◦ Mecanismo nativo para injeção de dependências
◦ Middlewares
◦ Modelo único para MVC e Web API
11. SQL Azure
◦ Serviço de banco de dados na nuvem
◦ Similar ao SQL Server on-premise
◦ Alta disponibilidade e escalabilidade
◦ Segurança
◦ Compatibilidade com as principais plataformas de
desenvolvimento
12. Entity Framework Core
◦ Mapeamento objeto-relacional (ORM)
◦ Nova versão multiplataforma
◦ Compatibilidade com .NET Framework Full,
.NET Core, Xamarin e Universal Apps
◦ SQL Server, PostgreSQL, Redis, Azure Table
Storage
13. Azure App Service
◦ Hospedagem de aplicações
◦ Suporte a múltiplas plataformas
◦ Alta disponibilidade, escalabilidade e
load balancing
◦ Integração com Git, GitHub, VSTS