Azure WebJobs

Preview:

Citation preview

Azure WebJobsVinicius Quaiato e Wennder Santos

• Vinicius Quaiato• Ninja developer na Lambda3• twitter.com/vquaiato• github.com/vquaiato• vquaiato.github.io• facebook.com/vquaiato

• Wennder Santos• Microsoft MVP vindo da roça /

developer na Lambda3• twitter.com/wenndersantos• github.com/wenndersantos• wenndersantos.github.io• facebook.com/wennder.santos

Cenário atual

• Web apps• Mobile apps• Desktop apps• IoT apps• Wearable apps• Whatever apps

Cenário atual

• Diferentes tipos de apps tem diferentes necessidades

• Processamento mobile é diferente de desktop, que é diferente de wearable, etc

Os problemas

• Timeout• Request de uma app online

• Processamento• Grande consumo de CPU em uma app mobile• Wearable… nem se fala

• Scheduled• Consolidação de dados a cada X tempo

Soluções

• Timeout• Aumentar o limite de tempo do request

• Processamento• new Thread()

• Scheduled• Scheduled task do Windows• Timers nas apps desktop

Soluções

• Existem N soluções diferentes• Cada solução pode ser boa em um determinado cenário e não

tão bom em outro• É preciso analisar cada caso e entender os trade offs

Azure WebJobs

Azure WebJobs

“Azure WebJobs provide an easy way to run scripts or programs as background processes in the context of an App Service web app, API app, or mobile app.”

Hora da demo

• Criação de um WebJob com Visual Studio

Hora da demo

• Publicação de um WebJob com Visual Studio

Tipos de WebJob

• Triggered WebJob• Sua execução é disparada a cada X tempo• Pode ser configurado utilizando um arquivo CRON

Hora da demo

• Triggered WebJob

Tipos de WebJob

• Continuous WebJob• Está sempre em execução• As funções são executadas quando condições específicas são

satisfeitas

Hora da demo

• Continuous WebJob