Artigos Rem soft Sistemas

Quarkus e a Revolução Java para a Era Cloud

No atual mercado de software, a agilidade e a eficiência de operações em ambientes nativos de nuvem se tornaram essenciais. Em resposta a essa demanda, a Red Hat apresentou em 2019 o Quarkus, um framework Java que se destaca como uma inovação direcionada ao universo Cloud Native, especialmente na utilização do Kubernetes.

O Quarkus foi concebido com uma arquitetura que prioriza a integração perfeita com o Kubernetes, diferenciando-o nesse aspecto de outros frameworks. Essa distinção não se limita apenas à tecnologia, visto que o Quarkus já se integra com diversos outros ecossistemas, incluindo Hibernate, Spring, bancos de dados e muitos outros.

Um dos atributos mais marcantes do Quarkus reside na otimização de recursos do servidor. Ao viabilizar o início e reinício instantâneo de aplicações, o framework demonstra uma gestão superior de memória e processamento. Um desafio clássico do Java sempre foi seu acoplamento à JVM, que, em ambientes de contêineres, muitas vezes, apresentava deficiências no gerenciamento de memória. O Quarkus surge como uma resposta a esse obstáculo, conferindo ao Java a capacidade de operar em perfeita integração com os contêineres, alinhando-se assim a outras linguagens de programação desenvolvidas desde o início com o paradigma de contêineres.

Um requisito fundamental do Quarkus é a utilização da versão 11 ou superior do Java, uma escolha explicada por resultados mais satisfatórios na interação com contêineres. A arquitetura do Quarkus foi elaborada para promover escalabilidade e elasticidade. A administração flexível de nós e recursos, se traduz em um processo de inicialização e atualização de aplicações extremamente eficiente.

A gestão de memória do Quarkus foi possível pela executando processos em tempo de build, onde atualmente são realizados em tempo de execução. Esse redirecionamento resultou em uma operação mais veloz do tempo de execução e em uma alocação menor de memória. Porém ainda vai depender de uma gestão de memória por parte do desenvolvedor, pois se houver uma utilização descontrolada de variáveis e armazenamento de registros em tempo de execução, essa utilização de memória poderá aumentar comparado com aplicação em que essa preocupação é natural para os devs, porém ainda assim será menor comparado com aplicações utilizadas em servidores jvm.

Um dos atributos mais impactantes do Quarkus é a sua compatibilidade com a linguagem Java convencional. Possibilitando a integração com uma quantidade enorme de frameworks como Hibernate, SpringBoot, Redis, Banco de dados, Kafka entre outros.

 

A grande dúvida dos desenvolvedores é a escolha entre o Spring Boot e o Quarkus, bem como outros frameworks. Entretanto, essa dúvida some ao considerar a capacidade do Quarkus de hospedar esses frameworks de forma nativa e integrada. Com essa abordagem, é possível aproveitar os benefícios de otimização e desempenho desses frameworks em um ambiente cloud nativo, e ainda facilitar a migração de aplicações legadas para o mundo Quarkus.

O Quarkus representa uma evolução marcante no domínio do desenvolvimento Java, ao apresentar uma alternativa concreta para enfrentar os desafios impostos pelas arquiteturas de nuvem. Ao combinar o poder do Java com as exigências contemporâneas de agilidade, escalabilidade e eficiência, o Quarkus se firma como um protagonista na jornada da tecnologia da informação em direção à era nativa de Kubernetes.

Gráfico de performance Quarkus.

 

INSTALAÇÃO

Instale o java 11.

Abra o Windows using Powershell e execute as duas linhas de comando:

iex "& { $(iwr https://ps.jbang.dev) } trust add https://repo1.maven.org/maven2/io/quarkus/quarkus-cli/"
 iex "& { $(iwr https://ps.jbang.dev) } app install --fresh --force quarkus@quarkusio"

Crie um aplicação inicial com o comando:

quarkus create && cd code-with-quarkus Execute a aplicação: quarkus dev Sua aplicação estará rodando em: localhost:8080 Para testar acesse: http://localhost:8080/hello

Para alterar o controller teste o arquivo é: src/main/java/org/acme/GreetingResource.java

Escrito por:

Está gostando do conteúdo? Compartilhe!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Artigos Recentes

Krayin CRM: Gestão de Relacionamento que Impulsiona Vendas

O que é Krayin CRM? Krayin CRM é uma plataforma de gestão de relacionamento com o cliente de código aberto, projetada para otimizar processos de vendas e impulsionar o crescimento do seu negócio. Código Aberto & Gratuito Construído sobre o robusto framework Laravel, oferece a liberdade e a flexibilidade de

Leia Mais »

Descentralização de Aplicações: Entendendo o papel das DApps

Aplicações descentralizadas, conhecidas como DApps (Decentralized Applications), vêm sendo impulsionadas principalmente pela hype na tecnologia blockchain. Ao contrário das aplicações tradicionais, onde o controle centralizado é um ponto vulnerável, as DApps operam sobre uma rede descentralizada como o próprio nome já diz , garantindo maior segurança, transparência e resiliência contra

Leia Mais »

Foco no Cliente

Foco no Cliente em Empresas de Tecnologia: Por que essa mentalidade é essencial? O foco no cliente é essencial para empresas de tecnologia porque, em um mercado cada vez mais competitivo e dinâmico, não basta oferecer produtos inovadores, é necessário criar soluções que atendam às reais necessidades dos usuários, gerem

Leia Mais »

Sobre o Autor

Mais sobre tecnologia

Gostou do Artigo?