Java – Liberando o TLSv1 no Java 11 ou superior

Em algumas situações não temos como atualizar um sistema legado e infelizmente podemos ter que nos comunicar atravéz de criptografias que estejam depreciadas. Exemplo: Se você estiver executando em um ambiente aberto, podemos simplismente encontrar o arquivo java.security na instalação do JRE que executará o software e basta só remover o algoritimo desejado da propertie: […]

Java Garbage Collector – Implementações, ZGC (Parte 4 / Final)

ZGC (Low Latency) O Z Garbage Collector, é um coletor de lixo escalável de baixa latência projetado para atender aos seguintes objetivos: Tempos máximos de pausa de sub-milissegundos (Para JDK <16 o max GC pause-time é na casa de 10ms, no JDK ≥16 fica abaixo de 1ms) Os tempos de pausa não aumentam com o tamanho […]

Java Garbage Collector – Implementações, G1 GC (Garbage First) (Parte 3)

G1 GC O objetivo do G1 GC é minimizar o tempo de pausa do GC e garantir o máximo de rendimento possível sem configuração adicional. Seu modelo fornece uma solução para usuários que executam aplicativos que exigem grandes heaps (não exigido) com uma latência de execução do GC limitada, ou seja, tempo de pausa (Ou […]

Java Garbage Collector – Implementações, Serial GC e Parallel GC (Parte 2)

Principais Implementações A JVM possui várias implementações de Garbage Collector: Serial, Parallel, G1, Z …  Cada coletor é otimizado para uma situação, e não necessariamente um é melhor que o outro, mas dependendo do objetivo de seu software conseguiremos escolher o mais adequado. Nesta sessão iremos entender suas principais características, qual é usada por default nas […]

Java Garbage Collector - Introdução (parte 1)

O objetivo deste artigo é conhecermos como a JVM lida com o gerenciamento de memória de nossas aplicações, quais os tipos de Garbage Collectors existentes até o momento e como escolher o melhor para determinada situação. O Garbage Collector (GC) é uma forma de realizar o gerenciamento automático de memória. Podemos dizer que é um […]

Unable to locate CDIProvider in RestClient Unit Test

Recentemente passei por um problema após ter adicionado a dependência quarkus-smallrye-opentracing em um projeto Quarkus. O problema ocorreu em um teste de unidade no qual o código passava em uma construção de um RestClientBuilder para validação da construção da Bean. O seguinte erro foi disparado: Para realizar a correção do problema, notei que o método […]

Spring Sleuth com Jersey / Jax-rs

O Spring sleuth é uma biblioteca fantástica para ajudar nos logs de requests, adicionando um traceId na requisição e repassando ela para as demais, assim, é possível realizar um trace por log dentro de todas as chamadas internas de uma API. Para quem usa o spring-boot-starter-jersey pode ter grandes problemas na entrada de requests, já […]

Como fazer o Quarkus identificar os Headers do Spring Sleuth

Por padrão, Quarkus usa a implementação do Jaeger para o OpenTracing. O Jaeger está usando cabeçalhos de propagação “Uber“, que são diferentes dos usados por Spring Sleuth (B3). Mas você pode configurar o Quarkus para usar a propagação B3 para torna-lo compatível com Spring Sleuth com a propriedade: Referência: https://quarkus.io/guides/opentracing#quarkus-jaeger_quarkus.jaeger.propagation

Spring Boot – Erro ao executar o jar: !/BOOT-INF/lib/ no such file – jersey-server

Ao executar um jar de um projeto Spring boot com a dependência do Jersey ( spring-boot-starter-jersey ) estava me deparando com o seguinte erro: Encontrei a salvação em um post no StackOverFlow que diz: The problem is that Jersey cannot scan classes in the new “fat boot jar”. This occurs when you try to use […]

Rolar para o topo