Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018

Renato Groff
Renato GroffAon Corporation
Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018
• Microsoft Most Valuable Professional (MVP)
• Multi-Plataform Technical Audience
Contributor (MTAC)
• Mais de 15 anos de experiência na área de
Tecnologia
• Autor Técnico e Palestrante
• Um dos organizadores do Canal .NET, do .NET
São Paulo e do Campinas .NET
Renato Groffe
h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
• Solutions Architect na Venturus
• Autor Técnico e Palestrante
• Um dos organizadores do .NET SP e do
Campinas .NET
Robson Araújo
h t t p s : / / m e d i u m . c o m / @ ro b s o n _ ro c h a /
Agenda
• Dicas para maior performance em APIs REST
• Exemplos práticos
APIs REST - Contexto Atual
• REST como principal estilo arquitetural
• Microserviços ganhando força
• Economia das APIs
• Escalabilidade, disponibilidade e performance
são questões centrais
E como podemos obter mais performance?
• Reduzindo o tamanho das respostas
produzidas
• Utilizando bancos de dados de forma
mais racional
• Monitoramento contínuo a fim de
identificar gargalos
E como podemos obter mais performance?
• Empregando cache
• Evitando processamentos de longa
duração
• Escalando nossas APIs
Como reduzir o tamanho das respostas?
• Removendo valores nulos
• Utilizando técnicas de compressão
Remoção de valores nulos - Antes
Remoção de valores nulos - Depois
Remoção de valores nulos - Resultado
Compressão utilizando GZip
Compressão utilizando Brotli
Utilização mais racional de bancos de dados
• Uso do suporte a JSON oferecido por bancos relacionais
como SQL Server e PostgreSQL
• Possibilidade de utilização de NoSQL
• Empregar índices mediante análise prévia
Suporte a JSON em um banco relacional
Suporte a JSON em um banco relacional
Utilização de cache
• O Redis é uma alternativa NoSQL interessante
para cache e bastante performática
Monitoramento de APIs REST
• Soluções como Azure Application Insights e
New Relic representam uma excelente
alternativa
Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018
Evitando processamentos de longa duração
• Implementação do pattern Fire-and-forget
• Soluções de mensageria como RabbitMQ podem
ser uma resposta
Algumas alternativas para escalar uma API
• Soluções do tipo PaaS (Platform as a Service)
• Containers Docker em conjunto com
orquestradores como Kubernetes
Referências – Performance em APIs REST:
bit.ly/performance-apis-aspnet-core
Referências – Performance em APIs REST:
bit.ly/performance-apis-aspnet-core
1 de 23

Recomendados

Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F... por
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...Renato Groff
2K visualizações35 slides
Aplicações Web Escaláveis no Azure: App Service, Docker e Kubernetes - Fevere... por
Aplicações Web Escaláveis no Azure: App Service, Docker e Kubernetes - Fevere...Aplicações Web Escaláveis no Azure: App Service, Docker e Kubernetes - Fevere...
Aplicações Web Escaláveis no Azure: App Service, Docker e Kubernetes - Fevere...Renato Groff
2.5K visualizações19 slides
ASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - Março por
ASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - MarçoASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - Março
ASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - MarçoRenato Groff
1.3K visualizações31 slides
Dicas para uma maior performance em APIs REST - Renato Groffe por
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato GroffeiMasters
595 visualizações20 slides
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ... por
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Renato Groff
24 visualizações33 slides
Docker + Azure: opções disponíveis para uso de Containers na nuvem Microsoft ... por
Docker + Azure: opções disponíveis para uso de Containers na nuvem Microsoft ...Docker + Azure: opções disponíveis para uso de Containers na nuvem Microsoft ...
Docker + Azure: opções disponíveis para uso de Containers na nuvem Microsoft ...Renato Groff
1K visualizações27 slides

Mais conteúdo relacionado

Mais procurados

Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ... por
Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...
Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...Renato Groff
5.4K visualizações25 slides
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ... por
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...Renato Groff
136 visualizações27 slides
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ... por
 APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ... APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ...
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ...Renato Groff
119 visualizações28 slides
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ... por
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Renato Groff
1.6K visualizações27 slides
TDC - Da presença online ao Cloud Computing por
TDC - Da presença online ao Cloud ComputingTDC - Da presença online ao Cloud Computing
TDC - Da presença online ao Cloud ComputingRoosevelt Nascimento Junior
361 visualizações19 slides
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ... por
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...Renato Groff
113 visualizações15 slides

Mais procurados(20)

Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ... por Renato Groff
Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...
Docker + Kubernetes: orquestrando containers e escalando rapidamente aplicaçõ...
Renato Groff5.4K visualizações
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ... por Renato Groff
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...
Hospedando Aplicações Web no Azure: App Service, Docker e Kubernetes - Azure ...
Renato Groff136 visualizações
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ... por Renato Groff
 APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ... APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ...
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure ...
Renato Groff119 visualizações
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ... por Renato Groff
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Renato Groff1.6K visualizações
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ... por Renato Groff
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...
Implementando soluções containerizadas com .NET Core 3.1 e o Microsoft Azure ...
Renato Groff113 visualizações
Hospedando projetos Web no Azure: de um site estático a um cluster Kubernetes... por Renato Groff
Hospedando projetos Web no Azure: de um site estático a um cluster Kubernetes...Hospedando projetos Web no Azure: de um site estático a um cluster Kubernetes...
Hospedando projetos Web no Azure: de um site estático a um cluster Kubernetes...
Renato Groff1.8K visualizações
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure T... por Renato Groff
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure T...APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure T...
APIs na nuvem: implementando soluções RESTful com o Microsoft Azure - Azure T...
Renato Groff62 visualizações
Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack... por Renato Groff
Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...
Tecnologias Microsoft, Open Source, Linux, Docker e a Nuvem - WTT-2019 - Mack...
Renato Groff956 visualizações
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado - Janeiro-2020 por Renato Groff
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado - Janeiro-2020Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado - Janeiro-2020
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado - Janeiro-2020
Renato Groff580 visualizações
Bancos de dados no Azure: conhecendo as opções relacionais e NoSQL disponívei... por Renato Groff
Bancos de dados no Azure: conhecendo as opções relacionais e NoSQL disponívei...Bancos de dados no Azure: conhecendo as opções relacionais e NoSQL disponívei...
Bancos de dados no Azure: conhecendo as opções relacionais e NoSQL disponívei...
Renato Groff377 visualizações
NoSQL na nuvem com o Azure Cosmos DB - MVPConf 2018 por Renato Groff
NoSQL na nuvem com o Azure Cosmos DB - MVPConf 2018NoSQL na nuvem com o Azure Cosmos DB - MVPConf 2018
NoSQL na nuvem com o Azure Cosmos DB - MVPConf 2018
Renato Groff432 visualizações
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020 por Renato Groff
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020
Sobrevoando os serviços do Azure | TDC Florianópolis Online 2020
Renato Groff2K visualizações
Microsoft Azure para Desenvolvedores Web - Azure para Devs e DBAs - Maio-2018 por Renato Groff
Microsoft Azure para Desenvolvedores Web - Azure para Devs e DBAs - Maio-2018Microsoft Azure para Desenvolvedores Web - Azure para Devs e DBAs - Maio-2018
Microsoft Azure para Desenvolvedores Web - Azure para Devs e DBAs - Maio-2018
Renato Groff15 visualizações
Apresentação Multimídia - Unifesp - VP9 por Henrique Genovês
Apresentação Multimídia - Unifesp - VP9Apresentação Multimídia - Unifesp - VP9
Apresentação Multimídia - Unifesp - VP9
Henrique Genovês478 visualizações
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Fevereiro-2020 por Renato Groff
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Fevereiro-2020Docker de ponta a ponta: do Desenvolvimento à Nuvem - Fevereiro-2020
Docker de ponta a ponta: do Desenvolvimento à Nuvem - Fevereiro-2020
Renato Groff669 visualizações
Nuvem em 2021: primeiros passos, Azure, tecnologias, carreira - UniFOA | Abri... por Renato Groffe
Nuvem em 2021: primeiros passos, Azure, tecnologias, carreira - UniFOA | Abri...Nuvem em 2021: primeiros passos, Azure, tecnologias, carreira - UniFOA | Abri...
Nuvem em 2021: primeiros passos, Azure, tecnologias, carreira - UniFOA | Abri...
Renato Groffe265 visualizações
Rails nas Nuvens por Saulo Arruda
Rails nas NuvensRails nas Nuvens
Rails nas Nuvens
Saulo Arruda833 visualizações
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715 por Renato Groff
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
Renato Groff234 visualizações
Docker + Kubernetes: Orquestrando containers e escalando rapidamente suas apl... por Renato Groff
Docker + Kubernetes: Orquestrando containers e escalando rapidamente suas apl...Docker + Kubernetes: Orquestrando containers e escalando rapidamente suas apl...
Docker + Kubernetes: Orquestrando containers e escalando rapidamente suas apl...
Renato Groff849 visualizações

Similar a Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018

Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -... por
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...Renato Groff
2.3K visualizações22 slides
Monitorando APIs REST com o Application Insights por
Monitorando APIs REST com o Application InsightsMonitorando APIs REST com o Application Insights
Monitorando APIs REST com o Application InsightsRenato Groff
894 visualizações37 slides
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetos por
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetosASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetos
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetosRenato Groff
5.3K visualizações14 slides
MongoDB no Microsoft Azure - DBA Brasil 2.0 por
MongoDB no Microsoft Azure - DBA Brasil 2.0MongoDB no Microsoft Azure - DBA Brasil 2.0
MongoDB no Microsoft Azure - DBA Brasil 2.0Renato Groff
214 visualizações20 slides
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C... por
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...Renato Groff
73 visualizações18 slides
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party... por
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...Renato Groff
3.9K visualizações28 slides

Similar a Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018(20)

Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -... por Renato Groff
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
Renato Groff2.3K visualizações
Monitorando APIs REST com o Application Insights por Renato Groff
Monitorando APIs REST com o Application InsightsMonitorando APIs REST com o Application Insights
Monitorando APIs REST com o Application Insights
Renato Groff894 visualizações
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetos por Renato Groff
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetosASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetos
ASP.NET Core: 5 frameworks/ferramentas indispensáveis em projetos
Renato Groff5.3K visualizações
MongoDB no Microsoft Azure - DBA Brasil 2.0 por Renato Groff
MongoDB no Microsoft Azure - DBA Brasil 2.0MongoDB no Microsoft Azure - DBA Brasil 2.0
MongoDB no Microsoft Azure - DBA Brasil 2.0
Renato Groff214 visualizações
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C... por Renato Groff
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
Renato Groff73 visualizações
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party... por Renato Groff
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...
Renato Groff3.9K visualizações
Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Dezem... por Renato Groff
Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Dezem...Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Dezem...
Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Dezem...
Renato Groff187 visualizações
SQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São Paulo por Renato Groff
SQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São PauloSQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São Paulo
SQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São Paulo
Renato Groff73 visualizações
Monitorando APIs REST com o Application Insights - .NET São Paulo - Junho-2018 por Renato Groff
Monitorando APIs REST com o Application Insights - .NET São Paulo - Junho-2018Monitorando APIs REST com o Application Insights - .NET São Paulo - Junho-2018
Monitorando APIs REST com o Application Insights - .NET São Paulo - Junho-2018
Renato Groff64 visualizações
Monitorando aplicações ASP.NET Core 2.2 com Health Checks, Application Insigh... por Renato Groff
Monitorando aplicações ASP.NET Core 2.2 com Health Checks, Application Insigh...Monitorando aplicações ASP.NET Core 2.2 com Health Checks, Application Insigh...
Monitorando aplicações ASP.NET Core 2.2 com Health Checks, Application Insigh...
Renato Groff3.4K visualizações
Monitorando APIs REST com o Application Insights - .Azure Weekend 2018 - Camp... por Renato Groff
Monitorando APIs REST com o Application Insights - .Azure Weekend 2018 - Camp...Monitorando APIs REST com o Application Insights - .Azure Weekend 2018 - Camp...
Monitorando APIs REST com o Application Insights - .Azure Weekend 2018 - Camp...
Renato Groff40 visualizações
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo por Renato Groff
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
Renato Groff161 visualizações
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - .NE... por Renato Groff
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - .NE...Monitorando aplicações Web com Application Insights, Logic Apps e Slack - .NE...
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - .NE...
Renato Groff3.3K visualizações
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - Dev... por Renato Groff
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - Dev...Monitorando aplicações Web com Application Insights, Logic Apps e Slack - Dev...
Monitorando aplicações Web com Application Insights, Logic Apps e Slack - Dev...
Renato Groff32 visualizações
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ... por Renato Groff
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Renato Groff369 visualizações
SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019 por Renato Groff
SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019
SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019
Renato Groff2.6K visualizações
Desenvolvimento Serverless com Azure Functions, .NET Core e VS Code - .NET SP... por Renato Groff
Desenvolvimento Serverless com Azure Functions, .NET Core e VS Code - .NET SP...Desenvolvimento Serverless com Azure Functions, .NET Core e VS Code - .NET SP...
Desenvolvimento Serverless com Azure Functions, .NET Core e VS Code - .NET SP...
Renato Groff129 visualizações
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019 por Renato Groff
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019
Nuvens com Ênfase em Azure - Locatech + Locaneers - Abril-2019
Renato Groff353 visualizações
Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour... por Renato Groff
Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour...Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour...
Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour...
Renato Groff4K visualizações
Arquiteturas Serverless + Azure Functions - Semana FCI - Mackenzie - Outubro-... por Renato Groff
Arquiteturas Serverless + Azure Functions - Semana FCI - Mackenzie - Outubro-...Arquiteturas Serverless + Azure Functions - Semana FCI - Mackenzie - Outubro-...
Arquiteturas Serverless + Azure Functions - Semana FCI - Mackenzie - Outubro-...
Renato Groff893 visualizações

Mais de Renato Groff

Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ... por
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...Renato Groff
312 visualizações40 slides
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020 por
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020Renato Groff
98 visualizações19 slides
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev... por
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...Renato Groff
250 visualizações18 slides
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat... por
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...Renato Groff
141 visualizações19 slides
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat... por
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...Renato Groff
117 visualizações14 slides
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No... por
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...Renato Groff
160 visualizações15 slides

Mais de Renato Groff(20)

Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ... por Renato Groff
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...
Renato Groff312 visualizações
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020 por Renato Groff
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020
Renato Groff98 visualizações
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev... por Renato Groff
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...
Renato Groff250 visualizações
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat... por Renato Groff
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...
Renato Groff141 visualizações
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat... por Renato Groff
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
Renato Groff117 visualizações
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No... por Renato Groff
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...
Renato Groff160 visualizações
Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf... por Renato Groff
Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf...Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf...
Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf...
Renato Groff88 visualizações
Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV... por Renato Groff
Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV...Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV...
Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV...
Renato Groff85 visualizações
Docker: dicas e truques para o dia a dia | MVPConf Latam 2020 por Renato Groff
Docker: dicas e truques para o dia a dia | MVPConf Latam 2020Docker: dicas e truques para o dia a dia | MVPConf Latam 2020
Docker: dicas e truques para o dia a dia | MVPConf Latam 2020
Renato Groff122 visualizações
Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020 por Renato Groff
Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020
Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020
Renato Groff209 visualizações
.NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |... por Renato Groff
.NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |....NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |...
.NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |...
Renato Groff169 visualizações
Aplicações Distribuídas com .NET | TDC Recife Online 2020 por Renato Groff
Aplicações Distribuídas com .NET | TDC Recife Online 2020Aplicações Distribuídas com .NET | TDC Recife Online 2020
Aplicações Distribuídas com .NET | TDC Recife Online 2020
Renato Groff130 visualizações
Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020 por Renato Groff
Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020
Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020
Renato Groff224 visualizações
Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ... por Renato Groff
Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ...Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ...
Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ...
Renato Groff184 visualizações
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -... por Renato Groff
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Renato Groff485 visualizações
.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie por Renato Groff
.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie
.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie
Renato Groff257 visualizações
Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ... por Renato Groff
Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ...Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ...
Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ...
Renato Groff576 visualizações
Kubernetes na Nuvem | Minicurso Gratuito - Azure na Prática por Renato Groff
Kubernetes na Nuvem | Minicurso Gratuito - Azure na PráticaKubernetes na Nuvem | Minicurso Gratuito - Azure na Prática
Kubernetes na Nuvem | Minicurso Gratuito - Azure na Prática
Renato Groff569 visualizações
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020 por Renato Groff
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020
Renato Groff435 visualizações
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020 por Renato Groff
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
Renato Groff241 visualizações

Dicas para uma maior performance em APIs REST - DEVPIRA Festival - Dezembro-2018

  • 2. • Microsoft Most Valuable Professional (MVP) • Multi-Plataform Technical Audience Contributor (MTAC) • Mais de 15 anos de experiência na área de Tecnologia • Autor Técnico e Palestrante • Um dos organizadores do Canal .NET, do .NET São Paulo e do Campinas .NET Renato Groffe h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
  • 3. • Solutions Architect na Venturus • Autor Técnico e Palestrante • Um dos organizadores do .NET SP e do Campinas .NET Robson Araújo h t t p s : / / m e d i u m . c o m / @ ro b s o n _ ro c h a /
  • 4. Agenda • Dicas para maior performance em APIs REST • Exemplos práticos
  • 5. APIs REST - Contexto Atual • REST como principal estilo arquitetural • Microserviços ganhando força • Economia das APIs • Escalabilidade, disponibilidade e performance são questões centrais
  • 6. E como podemos obter mais performance? • Reduzindo o tamanho das respostas produzidas • Utilizando bancos de dados de forma mais racional • Monitoramento contínuo a fim de identificar gargalos
  • 7. E como podemos obter mais performance? • Empregando cache • Evitando processamentos de longa duração • Escalando nossas APIs
  • 8. Como reduzir o tamanho das respostas? • Removendo valores nulos • Utilizando técnicas de compressão
  • 9. Remoção de valores nulos - Antes
  • 10. Remoção de valores nulos - Depois
  • 11. Remoção de valores nulos - Resultado
  • 14. Utilização mais racional de bancos de dados • Uso do suporte a JSON oferecido por bancos relacionais como SQL Server e PostgreSQL • Possibilidade de utilização de NoSQL • Empregar índices mediante análise prévia
  • 15. Suporte a JSON em um banco relacional
  • 16. Suporte a JSON em um banco relacional
  • 17. Utilização de cache • O Redis é uma alternativa NoSQL interessante para cache e bastante performática
  • 18. Monitoramento de APIs REST • Soluções como Azure Application Insights e New Relic representam uma excelente alternativa
  • 20. Evitando processamentos de longa duração • Implementação do pattern Fire-and-forget • Soluções de mensageria como RabbitMQ podem ser uma resposta
  • 21. Algumas alternativas para escalar uma API • Soluções do tipo PaaS (Platform as a Service) • Containers Docker em conjunto com orquestradores como Kubernetes
  • 22. Referências – Performance em APIs REST: bit.ly/performance-apis-aspnet-core
  • 23. Referências – Performance em APIs REST: bit.ly/performance-apis-aspnet-core