Pular para o conteúdo
Cesar Schutz
Tags

#Spring

9 artigos marcados com Spring, em 5 livros.

Clique num livro para ver só os artigos dele.

9 artigos

  1. Desenvolvimento de Software12 min de leitura

    Filtros de serialização no Jackson — mascarando número de cartão nos logs

    Como usar @JsonFilter, PropertyFilter e um mixin em Object para mascarar o número do cartão e remover o CVV só no mapper de log, com a API ainda devolvendo tudo.

    #Spring#Logs#Pagamentos

  2. Arquitetura de Software40 min de leitura

    CronJob ou endpoint + fila — onde rodar o batch de uma API Spring Boot no Kubernetes

    Uma API Spring Boot no Kubernetes precisa de uma rotina agendada: CronJob com a mesma imagem e o perfil batch, ou endpoint que enfileira no SQS para a própria API consumir? Onze critérios comparados.

    #Kubernetes#Spring#Mensageria#Trade-offs

  3. Dados19 min de leitura

    Bloqueio otimista e pessimista — como funcionam e quando usar cada um

    Como impedir que gravações simultâneas se atropelem: coluna de versão ou trava da linha. SQL testado no PostgreSQL, Spring Data JPA, NOWAIT e SKIP LOCKED, deadlock, isolamento e o UPDATE condicional.

    #Banco de Dados#Concorrência#Spring#Trade-offs

  4. Desenvolvimento de Software14 min de leitura

    AOP no Spring — JDK Dynamic Proxy, CGLIB e aspects customizados

    Como o Spring aplica log, transação e métricas fora da regra de negócio: conceitos de AOP, JDK Dynamic Proxy ou CGLIB (e por que o Boot prefere CGLIB), a self-invocation e aspects próprios.

    #Spring#AOP

  5. Desenvolvimento de Software7 min de leitura

    AopUtils.getTargetClass() — desembrulhando os proxies do Spring

    Com o bean envolto em proxy, bean.getClass() devolve a classe do proxy e a leitura de anotações falha. Como AopUtils.getTargetClass() recupera a classe real e quando usar ultimateTargetClass().

    #Spring#AOP

  6. Desenvolvimento de Software8 min de leitura

    Gradle — quando usar implementation, api, compileOnly e as demais configurações

    Cada configuração de dependência do Gradle alimenta um classpath: compilação, execução, processadores de anotação ou testes. Guia para bibliotecas e starters Spring Boot, com o papel do platform (BOM).

    #Gradle#Spring

  7. SRE9 min de leitura

    Logging estruturado em Spring Boot — LogstashEncoder vs o suporte nativo do 3.4+

    Cada log como uma linha JSON pesquisável: o caminho clássico com LogstashEncoder e o suporte nativo do Spring Boot 3.4+ (ECS, Logstash e GELF), com saídas reais, comparativo e critério de escolha.

    #Spring#Logs#Trade-offs

  8. DevOps10 min de leitura

    SIGTERM e SIGKILL — o ciclo de término de um pod no Kubernetes

    Como o Kubernetes encerra um pod: SIGTERM, SIGKILL e grace period, a corrida com os endpoints que o preStop resolve, exit codes, o graceful shutdown do Spring Boot e a pegadinha do PID 1.

    #Kubernetes#Spring

  9. SRE8 min de leitura

    Wide events e canonical log lines — a evolução do logging estruturado

    Um evento rico em contexto por requisição, no lugar de dezenas de logs parciais: as canonical log lines da Stripe, cardinalidade e Observability 2.0, um filtro em Spring Boot e tail sampling.

    #Logs#Spring

  • Desenvolvimento de Software12 min de leitura

    Filtros de serialização no Jackson — mascarando número de cartão nos logs

    Como usar @JsonFilter, PropertyFilter e um mixin em Object para mascarar o número do cartão e remover o CVV só no mapper de log, com a API ainda devolvendo tudo.

    #Spring#Logs#Pagamentos

  • Arquitetura de Software40 min de leitura

    CronJob ou endpoint + fila — onde rodar o batch de uma API Spring Boot no Kubernetes

    Uma API Spring Boot no Kubernetes precisa de uma rotina agendada: CronJob com a mesma imagem e o perfil batch, ou endpoint que enfileira no SQS para a própria API consumir? Onze critérios comparados.

    #Kubernetes#Spring#Mensageria#Trade-offs

  • Dados19 min de leitura

    Bloqueio otimista e pessimista — como funcionam e quando usar cada um

    Como impedir que gravações simultâneas se atropelem: coluna de versão ou trava da linha. SQL testado no PostgreSQL, Spring Data JPA, NOWAIT e SKIP LOCKED, deadlock, isolamento e o UPDATE condicional.

    #Banco de Dados#Concorrência#Spring#Trade-offs

  • Desenvolvimento de Software14 min de leitura

    AOP no Spring — JDK Dynamic Proxy, CGLIB e aspects customizados

    Como o Spring aplica log, transação e métricas fora da regra de negócio: conceitos de AOP, JDK Dynamic Proxy ou CGLIB (e por que o Boot prefere CGLIB), a self-invocation e aspects próprios.

    #Spring#AOP

  • Desenvolvimento de Software7 min de leitura

    AopUtils.getTargetClass() — desembrulhando os proxies do Spring

    Com o bean envolto em proxy, bean.getClass() devolve a classe do proxy e a leitura de anotações falha. Como AopUtils.getTargetClass() recupera a classe real e quando usar ultimateTargetClass().

    #Spring#AOP

  • Desenvolvimento de Software8 min de leitura

    Gradle — quando usar implementation, api, compileOnly e as demais configurações

    Cada configuração de dependência do Gradle alimenta um classpath: compilação, execução, processadores de anotação ou testes. Guia para bibliotecas e starters Spring Boot, com o papel do platform (BOM).

    #Gradle#Spring

  • SRE9 min de leitura

    Logging estruturado em Spring Boot — LogstashEncoder vs o suporte nativo do 3.4+

    Cada log como uma linha JSON pesquisável: o caminho clássico com LogstashEncoder e o suporte nativo do Spring Boot 3.4+ (ECS, Logstash e GELF), com saídas reais, comparativo e critério de escolha.

    #Spring#Logs#Trade-offs

  • DevOps10 min de leitura

    SIGTERM e SIGKILL — o ciclo de término de um pod no Kubernetes

    Como o Kubernetes encerra um pod: SIGTERM, SIGKILL e grace period, a corrida com os endpoints que o preStop resolve, exit codes, o graceful shutdown do Spring Boot e a pegadinha do PID 1.

    #Kubernetes#Spring

  • SRE8 min de leitura

    Wide events e canonical log lines — a evolução do logging estruturado

    Um evento rico em contexto por requisição, no lugar de dezenas de logs parciais: as canonical log lines da Stripe, cardinalidade e Observability 2.0, um filtro em Spring Boot e tail sampling.

    #Logs#Spring