Renato Jose Groffe
Desenvolvimento de Software
Robson Rocha de Araújo
Ewerton Rodrigues Jordão
Atua como consultor em atividades voltadas ao desenvolvimento de sistemas
há mais de 15 anos. Bacharel em Sistemas de Informação, com
Especialização em Engenharia de Software e MBA em Business Intelligence.
Também é palestrante e autor técnico em portais e revistas especializadas,
com foco em tecnologias Microsoft e boas práticas na área de software.
Mini-Biografia
@RenatoGroff
@renatogroffe medium.com/@renato.groffe
Arquiteto e desenvolvedor, busco soluções simples e objetivas, ao mesmo
tempo em que exploro as boas práticas e tecnologias mais atuais, e busco
conduzir minha equipe não só para desenvolver melhores produtos, mas para
se desenvolverem como melhores profissionais.
Como instrutor, dou ênfase no aprendizado do aluno, em transmitir minha
experiência e direcionar os estudantes às melhores práticas e a casos
práticos.
Mini-Biografia
@twitter
@robsonrochaaraujo procoding.com.br
https://about.me/RobsonAraujo
Trabalho na área de tecnologia há mais de 9 anos, durante os primeiros anos
focados em C#, nos últimos sete anos trabalhando com Azure ,PowerShell,
SQL Server e Windows Server. Amante da tecnologia, sempre buscando me
atualizar e tentando novas maneiras de agregar valor.
Mini-Biografia
@EwertonJordao
@ewerton-jordao medium.com/@ewertonjordao
PATROCINADORES_
Agradecemos a confiança e o investimento realizado pelos Patrocinadores
do MVPConf LATAM 2020.
Sem a participação deles o evento não aconteceria.
Nosso muito obrigado!!!
Lar de Idosos Nossa
Senhora da
Conceição
Aracaju - SE
Retiro dos Idosos
Universina Carrera
Machado
Santo Ângelo - RS
Associação
Comunitária Fênix
Jacareí - SP
Rede Feminina de
Combate ao Câncer
Três Lagoas - MS
Associação de Pais e
Amigos dos
Excepcionais – APAE
de Farroupilha
Farroupilha - RS
Lar da Criança Ninho
de Paz
São Paulo - SP
Abrigo Bom Pastor
Cornélio Procópio - PR
BENEFICIADAS
POR VOCÊ_
Estas foram as entidades beneficiadas com a doação que você realizou no
ato da sua inscrição no MVPConf LATAM 2020.
Sem a sua participação o evento não aconteceria e não poderíamos
impactar a vida de tantas pessoas.
Nosso muito obrigado!!!
01 – Por que Durable Functions?
02 – Durable Functions Introdução
03 – Padrões (Patterns)
04 – Demo
Introdução
EM DESTAQUE_
Durable Functions dão novos poderes ao serviço Azure Functions,
ou seja, são uma extensão das Functions que você já conhece.
Confiabilidade na execução de processos, armazenamento de
estado nativamente(sem necessidade de implementar algum tipo
de engenharia para isso), governança na gestão das funções.
Utilizando Functions sem Durable exige que o desenvolvedor faça
a gestão de inúmeras funções dependendo do tipo de processo
implementado com Azure Functions, imagine o seguinte cenário:
A cada novo Funcionário contratado é necessário executar uma
ordem de compra para os equipamentos que esse funcionário vai
utilizar, adicionar um usuário dentro do domínio para acesso as
aplicações corporativas e por fim enviar um e-mail para o contato
pessoal deste novo funcionário com as informações geradas nos
demais fluxos, neste pequeno cenário temos 3 funções.
Chain Pattern
EM DESTAQUE_
Funções encadeadas são um dos padrões possíveis
quando falamos de Durable Functions, o padrão
consiste em receber um gatilho de uma função que
fica escutando para informar o orquestrador que o
processo vai se iniciar, o orquestrador por sua vez
fica encarregado de controlar o fluxo de acionamento
das demais funções no caso do Chain Pattern
(Funções Encadeadas) ao acionar a primeira função
o Orquestrador aguarda a conclusão deste processo
para iniciar a próxima função no fluxo.
Fan-Out/Fan-In
EM DESTAQUE_
A principal característica deste padrão é o famoso:
"dividir para conquistar", utilizando o paralelismos,
você divide o processamento em outras funções,
aguarda a execução e retorna o resultado deste
processamento.
Async HTTP APIs
EM DESTAQUE_
No padrão Async HTTP APIs, com esse padrão
temos a exposição de APIs HTTP de forma que é
possivel acompanhar e interagir com o orquestrador
e suas entidades.
Monitor
EM DESTAQUE_
Nesse padrão criamos um processo que vai
monitorar até que as condiçoes estabelecidas na
minha função sejam atendidas e o tempo de vida da
minha função não tenha sido excedido, com esse tipo
de função eu poderia monitorar uma fila até que
todos os itens fossem processados, observar a
cotação de uma moeda e etc.
Human interaction
EM DESTAQUE_
Nesse padrão Interação Humana, após a Trigger ser
disparada o orquestrador iniciará uma função que
envia uma requisição(SMS, e-mail, mensagem em
ferramenta de produtividade e etc.) que dependendo
do evento de aprovação humana a função segue um
fluxo distinto.
DEMOS
Durable functionsmvp conf2020

Durable functionsmvp conf2020

  • 4.
    Renato Jose Groffe Desenvolvimentode Software Robson Rocha de Araújo Ewerton Rodrigues Jordão
  • 5.
    Atua como consultorem atividades voltadas ao desenvolvimento de sistemas há mais de 15 anos. Bacharel em Sistemas de Informação, com Especialização em Engenharia de Software e MBA em Business Intelligence. Também é palestrante e autor técnico em portais e revistas especializadas, com foco em tecnologias Microsoft e boas práticas na área de software. Mini-Biografia @RenatoGroff @renatogroffe medium.com/@renato.groffe
  • 6.
    Arquiteto e desenvolvedor,busco soluções simples e objetivas, ao mesmo tempo em que exploro as boas práticas e tecnologias mais atuais, e busco conduzir minha equipe não só para desenvolver melhores produtos, mas para se desenvolverem como melhores profissionais. Como instrutor, dou ênfase no aprendizado do aluno, em transmitir minha experiência e direcionar os estudantes às melhores práticas e a casos práticos. Mini-Biografia @twitter @robsonrochaaraujo procoding.com.br https://about.me/RobsonAraujo
  • 7.
    Trabalho na áreade tecnologia há mais de 9 anos, durante os primeiros anos focados em C#, nos últimos sete anos trabalhando com Azure ,PowerShell, SQL Server e Windows Server. Amante da tecnologia, sempre buscando me atualizar e tentando novas maneiras de agregar valor. Mini-Biografia @EwertonJordao @ewerton-jordao medium.com/@ewertonjordao
  • 8.
    PATROCINADORES_ Agradecemos a confiançae o investimento realizado pelos Patrocinadores do MVPConf LATAM 2020. Sem a participação deles o evento não aconteceria. Nosso muito obrigado!!!
  • 9.
    Lar de IdososNossa Senhora da Conceição Aracaju - SE Retiro dos Idosos Universina Carrera Machado Santo Ângelo - RS Associação Comunitária Fênix Jacareí - SP Rede Feminina de Combate ao Câncer Três Lagoas - MS Associação de Pais e Amigos dos Excepcionais – APAE de Farroupilha Farroupilha - RS Lar da Criança Ninho de Paz São Paulo - SP Abrigo Bom Pastor Cornélio Procópio - PR BENEFICIADAS POR VOCÊ_ Estas foram as entidades beneficiadas com a doação que você realizou no ato da sua inscrição no MVPConf LATAM 2020. Sem a sua participação o evento não aconteceria e não poderíamos impactar a vida de tantas pessoas. Nosso muito obrigado!!!
  • 10.
    01 – Porque Durable Functions? 02 – Durable Functions Introdução 03 – Padrões (Patterns) 04 – Demo
  • 12.
    Introdução EM DESTAQUE_ Durable Functionsdão novos poderes ao serviço Azure Functions, ou seja, são uma extensão das Functions que você já conhece. Confiabilidade na execução de processos, armazenamento de estado nativamente(sem necessidade de implementar algum tipo de engenharia para isso), governança na gestão das funções. Utilizando Functions sem Durable exige que o desenvolvedor faça a gestão de inúmeras funções dependendo do tipo de processo implementado com Azure Functions, imagine o seguinte cenário: A cada novo Funcionário contratado é necessário executar uma ordem de compra para os equipamentos que esse funcionário vai utilizar, adicionar um usuário dentro do domínio para acesso as aplicações corporativas e por fim enviar um e-mail para o contato pessoal deste novo funcionário com as informações geradas nos demais fluxos, neste pequeno cenário temos 3 funções.
  • 14.
    Chain Pattern EM DESTAQUE_ Funçõesencadeadas são um dos padrões possíveis quando falamos de Durable Functions, o padrão consiste em receber um gatilho de uma função que fica escutando para informar o orquestrador que o processo vai se iniciar, o orquestrador por sua vez fica encarregado de controlar o fluxo de acionamento das demais funções no caso do Chain Pattern (Funções Encadeadas) ao acionar a primeira função o Orquestrador aguarda a conclusão deste processo para iniciar a próxima função no fluxo.
  • 15.
    Fan-Out/Fan-In EM DESTAQUE_ A principalcaracterística deste padrão é o famoso: "dividir para conquistar", utilizando o paralelismos, você divide o processamento em outras funções, aguarda a execução e retorna o resultado deste processamento.
  • 16.
    Async HTTP APIs EMDESTAQUE_ No padrão Async HTTP APIs, com esse padrão temos a exposição de APIs HTTP de forma que é possivel acompanhar e interagir com o orquestrador e suas entidades.
  • 17.
    Monitor EM DESTAQUE_ Nesse padrãocriamos um processo que vai monitorar até que as condiçoes estabelecidas na minha função sejam atendidas e o tempo de vida da minha função não tenha sido excedido, com esse tipo de função eu poderia monitorar uma fila até que todos os itens fossem processados, observar a cotação de uma moeda e etc.
  • 18.
    Human interaction EM DESTAQUE_ Nessepadrão Interação Humana, após a Trigger ser disparada o orquestrador iniciará uma função que envia uma requisição(SMS, e-mail, mensagem em ferramenta de produtividade e etc.) que dependendo do evento de aprovação humana a função segue um fluxo distinto.
  • 19.