Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Acelerando o caminho para nuvem com serverless ...

Acelerando o caminho para nuvem com serverless e java

Palestra realizada no TDC POA 2020 sobre como usar Serverless com Java para acelerar o caminho para nuvem (cloud computing).

Avatar for Evandro Pires da Silva

Evandro Pires da Silva

December 02, 2020
Tweet

More Decks by Evandro Pires da Silva

Other Decks in Technology

Transcript

  1. Evandro Pires da Silva • Evangelista Serverless • Coordenador de

    pesquisa na Senior Sistemas • “Javeiro” desde 2005 • Programador desde os 12 anos • Filho de programador • Fundador e host do Sem Servidor podcast • Marido da Madi e pai do Teodoro e da Olivia
  2. Cloud computing • Realidade para muitas empresas • Sistemas legados

    • Transformação digital • Desafio especialmente àqueles que querem ir para cloud
  3. Serverless • Não precisa se preocupar com servidores • Foco

    maior no código • Pagamento apenas pela utilização
  4. Por que escolher serverless é uma boa ideia? • Melhor

    time to market • Redução de custos ◦ Custos de cloud ◦ Tempo de desenvolvimento ◦ Tempo de manutenção • Foco no negócio • Time enxuto
  5. Java no mundo • Muitos sistemas legados em Java •

    Muitos times tem predominância de know how em Java • Muito conteúdo sobre Java / Comunidade grande • Muitas bibliotecas em Java Java está morrendo?
  6. Por que usar Java? • O cold start nem sempre

    será um problema ◦ Arquitetura baseada em eventos ◦ Processos assíncronos ◦ Funções utilizadas muito frequentemente • Práticas para reduzir o cold start • Alternativa para “turbinar” o Java • O custo na maioria das vezes não é um impeditivo
  7. Como reduzir o cold start? • Utilizar bibliotecas light weight

    • Não faça inicialização estática de coisas que não são usadas todas as vezes • Não use reflection na inicialização (e outros lugares também :P) ◦ Conheça a biblioteca que usa para saber se também faz uso disso • Não faça classpath scanner • Faça o fine tuning do uso da memória
  8. Turbinando o Java • Quarkus ◦ 27k invocations ◦ 180

    ms em média (2500 ms máx) • Quarkus + GraalVM ◦ 27k invocations ◦ 180 ms em média (1200 ms máx) https://github.com/epiresdasilva/aws-lambda-quarkus
  9. Por que vale a pena usar Java • Uma curva

    de aprendizado a menos • Time to market ◦ Desenvolvimento mais rápido ◦ Aproveitamento do time atual • Reaproveitamento de código PS: Serve para outras linguagens que sejam a que o time domina
  10. Referências • Artigo sobre patterns: https://www.jeremydaly.com/serverless-microservice-patterns- for-aws/ • Sem Servidor

    podcast: https://semservidor.com.br • Serverless Chats: https://www.serverlesschats.com ◦ Episódio #47 • Meu GitHub: https://github.com/epiresdasilva • Mockytonk: https://mockytonk.com