Upload
bruno-belarmino
View
283
Download
0
Embed Size (px)
Citation preview
MiddlewaresASP.NET
Bruno Belarmino▷ Arquiteto de Soluções na I-Value▷ Programador .Net, Java, Python e
NodeJS▷ Organizador e Mentor do NodeSchool
Campinas▷ Organizador do Meetup de Docker em
Campinas▷ Atualmente se divertindo muito
codando para Android e achando que sei pilotar carrinho de golf….hehe
Twitter: @brbelarmino
Agenda▷ Introdução▷ Evolução dos middlewares dentro do ASP.NET▷ Dicas de uso ▷ Demonstração
O que é um middleware?
“Middleware é uma unidade
de código que pode ser plugada dentro de um pipeline para mudar ou
incorporar funcionalidades.
Modelo de processo
Middleware
Middleware
Middleware
Middlewares dentro do ASP.NET é realmente algo
novo?
O inícioModules e Handlers
Http ModulesSão unidades de código plugadas no request pipeline do ASP.NET que respondem a eventos definidos na classe HttpApplication
Passado, presente e (not) futuro
Http HandlersÉ a unidade de código/endpoint executado em resposta a um request realizado para uma aplicação ASP.NET
Http Module
Http Handler
Destaques
▷ Orientado a eventos▷ Dificil de testar (só foi possível a partir do .Net
3.5)▷ Precisa ser registrado via Web.config▷ Só roda no IIS▷ Você não determina 100% o momento da
execução
Uma nova ordemMessage/Delegating Handlers
ASP.NET Web API ao resgate
Message/Delegating HandlersÉ uma unidade de código (classe) que recebe um request e retorna um response.
Message/Delegating Handler
Destaques
▷ Configurado via código▷ Roda dentro e fora do IIS▷ Você tem mais poder em cima do momento
execução▷ Depende do ASP.NET▷ Possível de se testar
OWIN, Katana e um futuroOwinUm novo padrão para servidores web. E uma forma que a Microsoft criou para sair do system.web.
KatanaA primeira implementação de Owin. Feita pela Microsoft.
O futuroASP.NET Core
ASP.NET CoreO ASP.NET Core é o ASP.NET que você já conhece, porém 100% aderente ao padrão OWIN e com super poderes!!!
E o que isso quer dizer?
Que nós podemos brincar de lego:
Dúvidas?
Composição de plugins/middlewares
Dúvidas?
Novo Pipeline
Anatomia de um Middleware
Destaques
▷ Configurado via código▷ Roda em qualquer lugar▷ Você tem 100% de poder em cima do momento
execução▷ Você pode até desligar o ASP.NET▷ Muito fácil de se testar
Dúvidas?
Dicas de uso
▷ Cache (dá para substituir o PostSharp..hehe)
▷ Sanitize▷ Camada Anti Corrupção ▷ Monitoramento▷ Log▷ Rate Limit▷ Web Hook
Demo
Obrigaduu!Dúvidas?Entre em contato:@[email protected]://www.brunobelarmino.com.br
Código da demo:https://github.com/brunobelarmino/aspnet-conference