SlideShare uma empresa Scribd logo
Conheça o Quarkus Java: Supersonic Subatomic Java
Desenvolvedor de Software desde de 2005 e
Mestre em Ciência da Computação. Apaixonado
por viagens, animais e música. Adora
tecnologias que aumentem a produtividade.
Trabalha na área de arquitetura de integração de
sistemas distribuídos na BB Tecnologia e
Serviço. Pela primeira vez no Brasília Dev
Festival, vai apresentar a palestra: "Conheça o
Quarkus Java: Supersonic Subatomic Java"
https://github.com/marcuspaulo/
https://www.linkedin.com/in/marcuspaulo/
Apresentação
Conheça o Quarkus Java: Supersonic Subatomic Java
Conheça o Quarkus Java:
Supersonic Subatomic Java
Marcus Paulo
Introdução
QuarkusIO, the Supersonic Subatomic Java,
promete entregar pequenos artefatos, tempo de
inicialização extremamente rápido e menor tempo
para a primeira requisição.
Quando combinado com o GraalVM, o Quarkus
compila antecipadamente (AOT)
Conheça o Quarkus Java: Supersonic Subatomic Java
Já sei, vou ter que aprender tudo de novo?
Introdução
● Quarkus é construído com base nos padrões, não
precisamos aprender nada de novo.
● Conseqüentemente, podemos usar CDI e JAX-RS, entre
outros.
● Além disso, o Quarkus possui muitas extensões, incluindo
as que suportam Hibernate, Kafka, OpenShift,
Kubernetes e Vert.x.
Conheça o Quarkus Java: Supersonic Subatomic Java
GraalVM
● GraalVM é uma Java VM e JDK baseada em HotSpot /
OpenJDK, implementada em Java.
● Suporta diversas linguagens de programação
● Modos de execução adicionais, como a compilação
antecipada de aplicativos Java para inicialização rápida e
baixo consumo de memória
Características do GraalVM
● Performance (Alta performance em todas as
linguagens)
● Zero Overhead
● Execute seu código mais rápido e eficiente
● Interoperabilidade de linguagens (Poliglota)
● Compilar imagens nativas
● Ferramentas para Debug, monitoramento e profile
Conheça o Quarkus Java: Supersonic Subatomic Java
Conheça o Quarkus Java: Supersonic Subatomic Java
Demo
Demo 1 - GraalVM
GraalVM - Poliglota
Fonte: https://www.graalvm.org
NodeJS
Java
R
Demo
Demo 2 - Native Image
Conheça o Quarkus Java: Supersonic Subatomic Java
Caracteristicas do Quarkus
● A aplicação inicia mais rápido
● Baixo consumo de memória ram
● Kubernetes - CloudNative
● Integração com o Prothemeus (Log)
● Dockerfile é criado junto com a aplicação
● Live Reload
● Serveless
● Microserviços
Tempo de inicialização
Fonte: https://graalvm.org
Consumo de memória RAM
Fonte: https://graalvm.org
Tipos de programação
Imperativa Reativa
Fonte: https://quarkus.io/
Conheça o Quarkus Java: Supersonic Subatomic Java
Fonte: https://quarkus.io/
Panache
O Hibernate ORM é a implementação de JPA de fato e oferece toda a
extensão de um Mapeador Relacional de Objetos.
Isso possibilita mapeamentos complexos, mas não torna triviais os
mapeamentos simples e comuns.
O ORM do Hibernate com Panache se concentra em tornar suas
entidades triviais e divertidas de escrever no Quarkus.
Criando uma aplicação
Pacote
Nome do Projeto
Classe
Principal
Endereço URL
Demo
Demo 3 - Quarkus Panache
Criando e executando uma imagem no Docker
Extensões
Core
● Configuring Your Application
● Application Initialization and Termination
● Contexts and Dependency Injection
● Testing Your Application
● Configuring Logging
● Using SSL With Native Images
Web
● Writing REST JSON Services
● Validation with Hibernate Validator
● Using the REST Client
● Using JWT RBAC
● Using WebSockets
● Using OpenAPI and Swagger UI
● Using Fault Tolerance
Hibernate
WebSocket
Data
● Configuring your datasources
● Using Hibernate ORM and JPA
● Simplified Hibernate ORM with Panache
● Hibernate Search + Elasticsearch
● Using Infinispan Client
● Using Transactions
● Validation with Hibernate Validator
● Schema Migration with Flyway
● Reactive Postgres Client
● MongoDB Client
● Neo4j Client
Messaging
● Using Apache Kafka
● Using AMQP with Reactive Messaging
● Using Apache Kafka Streams
● Asynchronous Message Passing
Kafka
Produtor
Consumidor
Security
● Using Security
● Using JWT RBAC
● Using Keycloak to Protect JAX-RS Applications
● Using OAuth2 RBAC
Cloud
● Deploying Native Applications on Kubernetes or OpenShift
● Deploying Native Applications on Knative Kubernetes or
OpenShift
● Generating Kubernetes Resources
● Using the Kubernetes Client to Interact with a Kubernetes
Cluster
● Deploying to OpenShift using S2I
● Deploying to Microsoft Azure Cloud
Outras características
● Implementar sua própria extensão
● Escrever aplicações nativas
● Usar Kotlin
● Agendamento de tarefas
● Enviar e-mails
Conheça o Quarkus Java: Supersonic Subatomic Java
Dúvidas???
Referências
● https://quarkus.io/guides/
● https://www.graalvm.org/docs/
● https://cloud.oracle.com/pt_BR/iaas/devops
● https://www.infoq.com/br/news/2019/01/oracle-introduces-helidon/
● https://micronaut.io/
Muito obrigado :-)
Conheça o Quarkus Java: Supersonic Subatomic Java

Mais conteúdo relacionado

PPTX
KEY
Vraptor no Heroku
PDF
Acesso a dados com dapper
PDF
O que projetos de IoT precisam ?
PDF
Zabbix Proxy com Raspberry Pi - 3º Zabbix Meetup do Interior
PDF
Cloud computing & Spring Framework
PDF
Ambiente de CI/CD com Google Cloud
PDF
Avaliando o Apache Cassandra como cache distribuido no SPC Brasil - NoSQLBR
Vraptor no Heroku
Acesso a dados com dapper
O que projetos de IoT precisam ?
Zabbix Proxy com Raspberry Pi - 3º Zabbix Meetup do Interior
Cloud computing & Spring Framework
Ambiente de CI/CD com Google Cloud
Avaliando o Apache Cassandra como cache distribuido no SPC Brasil - NoSQLBR

Mais procurados (19)

PDF
Rodando uma API Com Django Rest Framework no Google Cloud
PDF
Alagoas Dev Day
PDF
Conceitos Basicos e Docker - Java Noroeste
PDF
Estudo de caso - Uso Docker no Desenvolvimento
PPTX
Introdução ao NodeJS
PDF
Trabalhando com Módulos no Puppet
PDF
ASP.NET vNext – MVC6
PPTX
Load Testing com VisualStudio + Azure
ODP
Docker tdc 2014
PDF
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
PDF
Apresentação Openstack - FISL 2013
PPTX
NodeJS - Tutorial de forma simples e pratica.
PDF
Node.js - #1 - Introdução - Rodrigo Branas
PDF
WebAssembly além da Web - Casos de Uso em IoT
PDF
Puppet webcast 4linux
PDF
Soluções de IoT usando Google Cloud e Firebase
KEY
Oficina Puppet - Aprenda a Gerenciar Configurações
PDF
Douglasesteves meetupzabbix
PDF
Transportando as aplicações entre vários ambientes com Docker
Rodando uma API Com Django Rest Framework no Google Cloud
Alagoas Dev Day
Conceitos Basicos e Docker - Java Noroeste
Estudo de caso - Uso Docker no Desenvolvimento
Introdução ao NodeJS
Trabalhando com Módulos no Puppet
ASP.NET vNext – MVC6
Load Testing com VisualStudio + Azure
Docker tdc 2014
TDC2018SP | Trilha Containers - ASGARD: Abstraindo orquestradores de containers
Apresentação Openstack - FISL 2013
NodeJS - Tutorial de forma simples e pratica.
Node.js - #1 - Introdução - Rodrigo Branas
WebAssembly além da Web - Casos de Uso em IoT
Puppet webcast 4linux
Soluções de IoT usando Google Cloud e Firebase
Oficina Puppet - Aprenda a Gerenciar Configurações
Douglasesteves meetupzabbix
Transportando as aplicações entre vários ambientes com Docker
Anúncio

Semelhante a Conheça o Quarkus Java: Supersonic Subatomic Java (20)

PDF
GraphQL na Era das APIs
PDF
GUJavaSC - Java EE 7 In Action
PDF
GraphQL - aposta ou retrocesso?
PDF
Latinoware - Quarkus io cloud native apps
PDF
Java EE no ambiente corporativo: primeiros passos WebLogic 12c
PDF
GraphQL na GetNinjas (2017-09-20)
PPTX
Desafios de Migrar para o Java 11+
PDF
Novidades de Java EE 7
PDF
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
PPTX
Testes de integração em microservices
PDF
GraphQL: PUTs, onde foram parar os verbos HTTP?
PDF
PyData - Consumindo e publicando web APIs com Python
PDF
Testando API Rest com Insomnia Core
PPTX
Graphql - o que é, onde e porque usar?
PDF
Java web fj21-- apostila da caelum
PDF
Construindo APIs RESTful com Spring
PPT
Hibernate
ODP
Introdução a Big Data e Apache Solr
PDF
Framework web 01 - Aula UTFPR 2018
PDF
Afinal, o que e quarkus
GraphQL na Era das APIs
GUJavaSC - Java EE 7 In Action
GraphQL - aposta ou retrocesso?
Latinoware - Quarkus io cloud native apps
Java EE no ambiente corporativo: primeiros passos WebLogic 12c
GraphQL na GetNinjas (2017-09-20)
Desafios de Migrar para o Java 11+
Novidades de Java EE 7
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Testes de integração em microservices
GraphQL: PUTs, onde foram parar os verbos HTTP?
PyData - Consumindo e publicando web APIs com Python
Testando API Rest com Insomnia Core
Graphql - o que é, onde e porque usar?
Java web fj21-- apostila da caelum
Construindo APIs RESTful com Spring
Hibernate
Introdução a Big Data e Apache Solr
Framework web 01 - Aula UTFPR 2018
Afinal, o que e quarkus
Anúncio

Último (7)

PPTX
Mapeamento de Objeto para Tabela Relacional
PDF
apresentacao introducao computacao ead.pdf
PDF
Evolução em código: algoritmos genéticos com PHP
PPTX
Curso de Windows 11 resumido na prática.pptx
PDF
Dos requisitos ao código: como criar código rastreável em PHP
DOC
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
DOC
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
Mapeamento de Objeto para Tabela Relacional
apresentacao introducao computacao ead.pdf
Evolução em código: algoritmos genéticos com PHP
Curso de Windows 11 resumido na prática.pptx
Dos requisitos ao código: como criar código rastreável em PHP
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO

Conheça o Quarkus Java: Supersonic Subatomic Java

  • 2. Desenvolvedor de Software desde de 2005 e Mestre em Ciência da Computação. Apaixonado por viagens, animais e música. Adora tecnologias que aumentem a produtividade. Trabalha na área de arquitetura de integração de sistemas distribuídos na BB Tecnologia e Serviço. Pela primeira vez no Brasília Dev Festival, vai apresentar a palestra: "Conheça o Quarkus Java: Supersonic Subatomic Java" https://github.com/marcuspaulo/ https://www.linkedin.com/in/marcuspaulo/ Apresentação
  • 4. Conheça o Quarkus Java: Supersonic Subatomic Java Marcus Paulo
  • 5. Introdução QuarkusIO, the Supersonic Subatomic Java, promete entregar pequenos artefatos, tempo de inicialização extremamente rápido e menor tempo para a primeira requisição. Quando combinado com o GraalVM, o Quarkus compila antecipadamente (AOT)
  • 7. Já sei, vou ter que aprender tudo de novo?
  • 8. Introdução ● Quarkus é construído com base nos padrões, não precisamos aprender nada de novo. ● Conseqüentemente, podemos usar CDI e JAX-RS, entre outros. ● Além disso, o Quarkus possui muitas extensões, incluindo as que suportam Hibernate, Kafka, OpenShift, Kubernetes e Vert.x.
  • 10. GraalVM ● GraalVM é uma Java VM e JDK baseada em HotSpot / OpenJDK, implementada em Java. ● Suporta diversas linguagens de programação ● Modos de execução adicionais, como a compilação antecipada de aplicativos Java para inicialização rápida e baixo consumo de memória
  • 11. Características do GraalVM ● Performance (Alta performance em todas as linguagens) ● Zero Overhead ● Execute seu código mais rápido e eficiente ● Interoperabilidade de linguagens (Poliglota) ● Compilar imagens nativas ● Ferramentas para Debug, monitoramento e profile
  • 14. Demo Demo 1 - GraalVM
  • 15. GraalVM - Poliglota Fonte: https://www.graalvm.org NodeJS Java R
  • 16. Demo Demo 2 - Native Image
  • 18. Caracteristicas do Quarkus ● A aplicação inicia mais rápido ● Baixo consumo de memória ram ● Kubernetes - CloudNative ● Integração com o Prothemeus (Log) ● Dockerfile é criado junto com a aplicação ● Live Reload ● Serveless ● Microserviços
  • 19. Tempo de inicialização Fonte: https://graalvm.org
  • 20. Consumo de memória RAM Fonte: https://graalvm.org
  • 25. Panache O Hibernate ORM é a implementação de JPA de fato e oferece toda a extensão de um Mapeador Relacional de Objetos. Isso possibilita mapeamentos complexos, mas não torna triviais os mapeamentos simples e comuns. O ORM do Hibernate com Panache se concentra em tornar suas entidades triviais e divertidas de escrever no Quarkus.
  • 26. Criando uma aplicação Pacote Nome do Projeto Classe Principal Endereço URL
  • 27. Demo Demo 3 - Quarkus Panache
  • 28. Criando e executando uma imagem no Docker
  • 30. Core ● Configuring Your Application ● Application Initialization and Termination ● Contexts and Dependency Injection ● Testing Your Application ● Configuring Logging ● Using SSL With Native Images
  • 31. Web ● Writing REST JSON Services ● Validation with Hibernate Validator ● Using the REST Client ● Using JWT RBAC ● Using WebSockets ● Using OpenAPI and Swagger UI ● Using Fault Tolerance
  • 34. Data ● Configuring your datasources ● Using Hibernate ORM and JPA ● Simplified Hibernate ORM with Panache ● Hibernate Search + Elasticsearch ● Using Infinispan Client ● Using Transactions ● Validation with Hibernate Validator ● Schema Migration with Flyway ● Reactive Postgres Client ● MongoDB Client ● Neo4j Client
  • 35. Messaging ● Using Apache Kafka ● Using AMQP with Reactive Messaging ● Using Apache Kafka Streams ● Asynchronous Message Passing
  • 37. Security ● Using Security ● Using JWT RBAC ● Using Keycloak to Protect JAX-RS Applications ● Using OAuth2 RBAC
  • 38. Cloud ● Deploying Native Applications on Kubernetes or OpenShift ● Deploying Native Applications on Knative Kubernetes or OpenShift ● Generating Kubernetes Resources ● Using the Kubernetes Client to Interact with a Kubernetes Cluster ● Deploying to OpenShift using S2I ● Deploying to Microsoft Azure Cloud
  • 39. Outras características ● Implementar sua própria extensão ● Escrever aplicações nativas ● Usar Kotlin ● Agendamento de tarefas ● Enviar e-mails
  • 42. Referências ● https://quarkus.io/guides/ ● https://www.graalvm.org/docs/ ● https://cloud.oracle.com/pt_BR/iaas/devops ● https://www.infoq.com/br/news/2019/01/oracle-introduces-helidon/ ● https://micronaut.io/