<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Artigos · Carlos Seidl</title>
  <link>https://ceseidl.com.br/artigos/</link>
  <description>Artigos sobre arquitetura de software, .NET, IA aplicada e cloud.</description>
  <language>pt-BR</language>
  <atom:link href="https://ceseidl.com.br/artigos/feed.xml" rel="self" type="application/rss+xml"/>
  <lastBuildDate>Sun, 01 Nov 2026 12:00:00 -0300</lastBuildDate>
  <item>
    <title>OpenTelemetry em .NET: do código ao Grafana com Jaeger, Prometheus e Loki</title>
    <link>https://ceseidl.com.br/artigos/opentelemetry-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/opentelemetry-dotnet/</guid>
    <pubDate>Sun, 01 Nov 2026 12:00:00 -0300</pubDate>
    <description>OpenTelemetry em .NET 10 com Collector, Jaeger, Prometheus, Loki e Grafana: do deploy que deixou o checkout lento até o span culpado, com números reais.</description>
    <category>Observabilidade</category>
    <category>OpenTelemetry</category>
    <category>Grafana</category>
    <category>Jaeger</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Logs, métricas e traces em .NET: três visões do mesmo incidente</title>
    <link>https://ceseidl.com.br/artigos/logs-metricas-traces-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/logs-metricas-traces-dotnet/</guid>
    <pubDate>Sun, 01 Nov 2026 10:00:00 -0300</pubDate>
    <description>Um deploy deixa o checkout lento: como métrica por versão, log com trace id e trace distribuído em .NET 10 levam do alerta à causa.</description>
    <category>Observabilidade</category>
    <category>Logs</category>
    <category>Métricas</category>
    <category>Traces</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>API do Claude no ASP.NET Core: streaming e tool use em C#</title>
    <link>https://ceseidl.com.br/artigos/api-claude-aspnet-core-streaming/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/api-claude-aspnet-core-streaming/</guid>
    <pubDate>Sat, 24 Oct 2026 17:00:00 -0300</pubDate>
    <description>Streaming da resposta do Claude com Server-Sent Events e tool use chamando código C# no ASP.NET Core 10, com três armadilhas e testes xUnit.</description>
    <category>IA</category>
    <category>Claude</category>
    <category>ASP.NET Core</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Pico de tráfego nas festas: como preparar sua API .NET antes da data</title>
    <link>https://ceseidl.com.br/artigos/pico-trafego-api-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/pico-trafego-api-dotnet/</guid>
    <pubDate>Sat, 24 Oct 2026 16:00:00 -0300</pubDate>
    <description>Como preparar uma API .NET 10 para o pico de fim de ano: cache aquecido, limite de concorrência, prazo, fila com limite e teste de carga, medidos antes e depois.</description>
    <category>Performance</category>
    <category>Teste de carga</category>
    <category>APIs</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Microsoft.Extensions.AI, Semantic Kernel ou SDK direto: qual usar em .NET</title>
    <link>https://ceseidl.com.br/artigos/extensions-ai-semantic-kernel-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/extensions-ai-semantic-kernel-dotnet/</guid>
    <pubDate>Sat, 24 Oct 2026 15:00:00 -0300</pubDate>
    <description>A mesma tarefa de IA em .NET 10 com o SDK da OpenAI, o Microsoft.Extensions.AI e o Semantic Kernel: function calling, troca de provedor, armadilhas e teste.</description>
    <category>IA</category>
    <category>Microsoft.Extensions.AI</category>
    <category>Semantic Kernel</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Pagou, Mas o Pedido Falhou: Como Estornar com Saga em .NET</title>
    <link>https://ceseidl.com.br/artigos/saga-estorno-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/saga-estorno-dotnet/</guid>
    <pubDate>Thu, 22 Oct 2026 14:00:00 -0300</pubDate>
    <description>Pagou, mas o pedido falhou: como estornar com uma saga em .NET 10, com compensação idempotente, estado do pedido e cenários de falha reproduzidos em um exemplo.</description>
    <category>Saga</category>
    <category>Estorno</category>
    <category>Microsserviços</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Redis Cache em Microsserviços .NET: Menos Consultas ao Banco, Mais Escala</title>
    <link>https://ceseidl.com.br/artigos/redis-cache-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/redis-cache-dotnet/</guid>
    <pubDate>Thu, 22 Oct 2026 13:00:00 -0300</pubDate>
    <description>Cache com Redis em microsserviços .NET 10: o padrão cache-aside, TTL, medições de consultas ao banco e as armadilhas que aparecem só depois do ganho de desempenho.</description>
    <category>Redis</category>
    <category>Cache</category>
    <category>Microsserviços</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Ordem dos Middlewares em .NET: O Bug Escondido no Program.cs</title>
    <link>https://ceseidl.com.br/artigos/ordem-middlewares-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/ordem-middlewares-dotnet/</guid>
    <pubDate>Thu, 22 Oct 2026 12:00:00 -0300</pubDate>
    <description>A ordem dos middlewares no ASP.NET Core muda o comportamento da API sem gerar erro: três regras (autenticação, exceções e CORS) e uma demonstração com cinco ordens.</description>
    <category>Middlewares</category>
    <category>ASP.NET Core</category>
    <category>APIs</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>C4, UML e ArchiMate em .NET: Escolhendo a Visão Certa de Arquitetura</title>
    <link>https://ceseidl.com.br/artigos/c4-uml-archimate-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/c4-uml-archimate-dotnet/</guid>
    <pubDate>Thu, 22 Oct 2026 11:00:00 -0300</pubDate>
    <description>C4, UML ou ArchiMate? Uma regra para escolher a vista certa de arquitetura e um modelo único em C# que gera as três como código, com testes, em .NET 10.</description>
    <category>Arquitetura</category>
    <category>C4</category>
    <category>UML</category>
    <category>ArchiMate</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>.NET 10 + Kubernetes: do Dockerfile aos Probes de Resiliência</title>
    <link>https://ceseidl.com.br/artigos/kubernetes-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/kubernetes-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 10:00:00 -0300</pubDate>
    <description>Como colocar uma API .NET 10 no Kubernetes e mantê-la de pé: Dockerfile chiseled, health checks, probes, graceful shutdown e rolling update, tudo medido em um cluster kind.</description>
    <category>Kubernetes</category>
    <category>Docker</category>
    <category>.NET 10</category>
    <category>Resiliência</category>
  </item>
  <item>
    <title>RAG em .NET: Respostas Baseadas nos Seus Dados, Passo a Passo</title>
    <link>https://ceseidl.com.br/artigos/rag-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/rag-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 09:00:00 -0300</pubDate>
    <description>Assistente RAG em .NET 10 sobre a documentação de um time: busca, citações, avaliação e app WPF, local com Ollama ou no Azure AI Foundry trocando a configuração.</description>
    <category>RAG</category>
    <category>IA</category>
    <category>Azure AI Foundry</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Tolerância a Falhas vs Resiliência em .NET: A Diferença na Prática</title>
    <link>https://ceseidl.com.br/artigos/resiliencia-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/resiliencia-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 18:00:00 -0300</pubDate>
    <description>A diferença entre tolerância a falhas (redundância) e resiliência (timeout, retry, circuit breaker e fallback), com um exemplo em .NET 10 e a saída de quatro cenários.</description>
    <category>Resiliência</category>
    <category>Polly</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Rate Limiting em .NET: Controlando o Tráfego da Sua API</title>
    <link>https://ceseidl.com.br/artigos/rate-limiting-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/rate-limiting-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 17:00:00 -0300</pubDate>
    <description>Como proteger sua API de abuso e picos de tráfego com o rate limiting nativo do ASP.NET Core: 4 algoritmos, 429 com Retry-After e um exemplo em .NET 10.</description>
    <category>Rate Limiting</category>
    <category>ASP.NET Core</category>
    <category>APIs</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>MCP em .NET: Conectando Modelos de IA a Ferramentas e Dados</title>
    <link>https://ceseidl.com.br/artigos/mcp-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/mcp-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 16:00:00 -0300</pubDate>
    <description>Como expor ferramentas a modelos de IA com o Model Context Protocol: servidor e cliente MCP em .NET 10 com o SDK oficial, tools, JSON-RPC e erros comuns.</description>
    <category>MCP</category>
    <category>IA</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Kafka vs RabbitMQ em .NET: Mensageria na Prática</title>
    <link>https://ceseidl.com.br/artigos/kafka-vs-rabbitmq-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/kafka-vs-rabbitmq-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 15:00:00 -0300</pubDate>
    <description>Kafka vs RabbitMQ em .NET 10: fila de tarefas contra log de eventos, com o mesmo contrato rodando nos dois brokers.</description>
    <category>Kafka</category>
    <category>RabbitMQ</category>
    <category>Mensageria</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Saga Pattern em .NET: Transações Distribuídas entre Microsserviços</title>
    <link>https://ceseidl.com.br/artigos/saga-pattern-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/saga-pattern-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 14:00:00 -0300</pubDate>
    <description>Saga Pattern em .NET 10: transações locais, compensações idempotentes, coreografia e orquestração, com um orquestrador de pedido que compensa a falha.</description>
    <category>Arquitetura</category>
    <category>Saga</category>
    <category>Microsserviços</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Monólito modular em .NET: o meio-termo antes dos microsserviços</title>
    <link>https://ceseidl.com.br/artigos/monolito-modular-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/monolito-modular-dotnet/</guid>
    <pubDate>Wed, 21 Oct 2026 13:00:00 -0300</pubDate>
    <description>Como montar um monólito modular em .NET 10: módulos com contrato público, schema por módulo, comunicação por eventos e testes de arquitetura.</description>
    <category>Arquitetura</category>
    <category>.NET</category>
    <category>Monólito modular</category>
  </item>
  <item>
    <title>dotnetup: Gerenciando SDKs e Runtimes do .NET sem Administrador</title>
    <link>https://ceseidl.com.br/artigos/dotnetup-sdks-runtimes/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/dotnetup-sdks-runtimes/</guid>
    <pubDate>Tue, 20 Oct 2026 12:00:00 -0300</pubDate>
    <description>dotnetup, o novo gerenciador de toolchain do .NET (public preview): SDKs e runtimes sem administrador, canais, global.json e quando ainda usar os instaladores.</description>
    <category>dotnetup</category>
    <category>.NET 10</category>
    <category>SDK</category>
    <category>global.json</category>
  </item>
  <item>
    <title>API Gateway + BFF em .NET: Um Gateway, Vários Clientes</title>
    <link>https://ceseidl.com.br/artigos/api-gateway-bff-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/api-gateway-bff-dotnet/</guid>
    <pubDate>Tue, 20 Oct 2026 11:00:00 -0300</pubDate>
    <description>Como combinar API Gateway com YARP e BFF em .NET 10 para dar a cada cliente os dados certos, com autenticação e rate limiting centralizados.</description>
    <category>API Gateway</category>
    <category>BFF</category>
    <category>YARP</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Estrutura de um Projeto Claude Code: o Que Vai em Cada Arquivo e Pasta</title>
    <link>https://ceseidl.com.br/artigos/estrutura-projeto-claude-code/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/estrutura-projeto-claude-code/</guid>
    <pubDate>Tue, 13 Oct 2026 10:00:00 -0300</pubDate>
    <description>O que vai em cada arquivo e pasta de um projeto Claude Code: CLAUDE.md, .claude/, .mcp.json, skills, agentes e permissões.</description>
    <category>Claude Code</category>
    <category>IA</category>
    <category>Configuração</category>
  </item>
  <item>
    <title>Claude Code com .NET, Parte 2: o Primeiro Projeto</title>
    <link>https://ceseidl.com.br/artigos/claude-code-dotnet-parte-2/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/claude-code-dotnet-parte-2/</guid>
    <pubDate>Thu, 08 Oct 2026 09:00:00 -0300</pubDate>
    <description>Parte 2: o kickoff de uma Minimal API em .NET 10 com testes, do pedido em modo plano à skill de revisão antes do commit.</description>
    <category>Claude Code</category>
    <category>IA</category>
    <category>.NET 10</category>
    <category>Minimal API</category>
  </item>
  <item>
    <title>Claude Code com .NET, Parte 1: da Configuração às Skills</title>
    <link>https://ceseidl.com.br/artigos/claude-code-dotnet/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/claude-code-dotnet/</guid>
    <pubDate>Thu, 08 Oct 2026 18:00:00 -0300</pubDate>
    <description>Parte 1: instalar o Claude Code, escrever o CLAUDE.md, definir permissões e modos, dominar o ritmo pedir, iterar e confirmar, e criar skills.</description>
    <category>Claude Code</category>
    <category>IA</category>
    <category>.NET 10</category>
  </item>
  <item>
    <title>Como Mapear DTOs Manualmente em .NET — Parte 3</title>
    <link>https://ceseidl.com.br/artigos/mapear-dtos-manualmente/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/mapear-dtos-manualmente/</guid>
    <pubDate>Tue, 06 Oct 2026 17:00:00 -0300</pubDate>
    <description>Mapeamento manual de DTOs com invariantes, objetos aninhados, PATCH seguro, organização por feature e testes xUnit.</description>
    <category>.NET</category>
    <category>DTO</category>
    <category>Testes</category>
    <category>C#</category>
  </item>
  <item>
    <title>Records em C#: menos código repetitivo, mais significado!</title>
    <link>https://ceseidl.com.br/artigos/records-csharp/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/records-csharp/</guid>
    <pubDate>Tue, 29 Sep 2026 16:00:00 -0300</pubDate>
    <description>Records em C# para Value Objects, DTOs e mensagens: imutabilidade, igualdade por valor, with e pattern matching.</description>
    <category>C#</category>
    <category>Records</category>
    <category>DDD</category>
  </item>
  <item>
    <title>Vertical Slices em .NET: Estruturando Features de Ponta a Ponta</title>
    <link>https://ceseidl.com.br/artigos/vertical-slices/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/vertical-slices/</guid>
    <pubDate>Tue, 29 Sep 2026 15:00:00 -0300</pubDate>
    <description>Organizar o código por features de ponta a ponta em vez de camadas: coesão, menos acoplamento e evolução incremental.</description>
    <category>Arquitetura</category>
    <category>Vertical Slices</category>
    <category>.NET</category>
  </item>
  <item>
    <title>Minimal APIs em ASP.NET Core: simplicidade que escala ou armadilha arquitetural?</title>
    <link>https://ceseidl.com.br/artigos/minimal-apis/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/minimal-apis/</guid>
    <pubDate>Mon, 21 Sep 2026 14:00:00 -0300</pubDate>
    <description>Minimal APIs no ASP.NET Core: roteamento, binding, validação, comparação com Controllers e quando a simplicidade vira armadilha.</description>
    <category>ASP.NET Core</category>
    <category>Minimal APIs</category>
    <category>Arquitetura</category>
  </item>
  <item>
    <title>Monólito vs Microservices – Uma Explicação do Mundo Real</title>
    <link>https://ceseidl.com.br/artigos/monolito-vs-microservices/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/monolito-vs-microservices/</guid>
    <pubDate>Tue, 15 Sep 2026 13:00:00 -0300</pubDate>
    <description>Como monólitos e microservices funcionam no dia a dia, com custos operacionais, limitações e quando cada abordagem faz sentido.</description>
    <category>Arquitetura</category>
    <category>Microservices</category>
    <category>.NET</category>
  </item>
  <item>
    <title>Evite DateTime.Now em produção .NET 10 — UTC na nuvem (Azure/AWS), contêineres e práticas</title>
    <link>https://ceseidl.com.br/artigos/evite-datetime-now/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/evite-datetime-now/</guid>
    <pubDate>Tue, 08 Sep 2026 12:00:00 -0300</pubDate>
    <description>Armazene em UTC e exiba em horário local: TimeProvider, contêineres com TZ=Etc/UTC e práticas para Azure, AWS e Kubernetes.</description>
    <category>.NET 10</category>
    <category>UTC</category>
    <category>Contêineres</category>
    <category>Cloud</category>
  </item>
  <item>
    <title>Clean Architecture em .NET: quando ela resolve problemas reais (e quando só complica)</title>
    <link>https://ceseidl.com.br/artigos/clean-architecture/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/clean-architecture/</guid>
    <pubDate>Sat, 05 Sep 2026 11:00:00 -0300</pubDate>
    <description>Quando a Clean Architecture protege as regras de negócio e quando só adiciona complexidade, com a regra da dependência na prática.</description>
    <category>Arquitetura</category>
    <category>.NET</category>
    <category>Clean Architecture</category>
  </item>
  <item>
    <title>.NET 10 e C# 14: Tudo que você precisa saber sobre as novidades!</title>
    <link>https://ceseidl.com.br/artigos/dotnet-10-csharp-14/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/dotnet-10-csharp-14/</guid>
    <pubDate>Sat, 05 Sep 2026 10:00:00 -0300</pubDate>
    <description>Um tour pelo .NET 10 (LTS) e pelo C# 14: JIT, NativeAOT, criptografia pós-quântica, a palavra-chave field, extension members e mais.</description>
    <category>.NET 10</category>
    <category>C# 14</category>
    <category>Novidades</category>
  </item>
  <item>
    <title>Transient, Scoped ou Singleton? A Analogia da Cafeteria ☕</title>
    <link>https://ceseidl.com.br/artigos/transient-scoped-singleton/</link>
    <guid isPermaLink="true">https://ceseidl.com.br/artigos/transient-scoped-singleton/</guid>
    <pubDate>Sat, 05 Sep 2026 09:00:00 -0300</pubDate>
    <description>Os três lifetimes da injeção de dependência no .NET explicados com uma cafeteria: copos descartáveis, garçom e máquina de espresso.</description>
    <category>.NET</category>
    <category>Injeção de Dependência</category>
    <category>ASP.NET Core</category>
  </item>
</channel>
</rss>
