Middlewares
ASP.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ício
Modules e Handlers
Http Modules
Sã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 ordem
Message/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 futuro
Owin
Um novo padrão para servidores web. E uma forma
que a Microsoft criou para sair do system.web.
Katana
A primeira implementação de Owin. Feita pela
Microsoft.
O futuro
ASP.NET Core
ASP.NET Core
O 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:
@brbelarmino
bb.belarmino@gmail.com
http://www.brunobelarmino.com.br
Código da demo:
https://github.com/brunobelarmino/aspnet-conference

Middlewares ASP.NET