O uso de caching em sistemas distribuídos tornou-se uma prática essencial para melhorar a performance e a escalabilidade de aplicações. A escolha da estratégia de caching adequada é um desafio que muitos enfrentam. Com diversas abordagens disponíveis, é fácil se...
The Microservices Journey – S2E2: Tipos de Independência
Quando se fala em independência de um microsserviço, o que de fato está sendo dito? A independência tem função de viabilizar com que roadmaps de um microsserviço, ou microsserviços de uma time/equipe, tenham capacidade de evoluir sem atrito, sem afetar ou interferir...
The Microservices Journey – S2E1: Independência ou morte
Recentemente a discussão sobre microsserviços retornou das profundezas da escuridão, sob temas superados, e reforçados em inúmeras oportunidades ao longo dos últimos anos. Afinal, banco de dados compartilhado? Pode? E monorepo? Faz sentido? E o que Sam Newman diz...
Oragon.RabbitMQ – A relação entre Ack e Resiliência
Oragon.RabbitMQ está no forno! Hoje começamos uma série que trata dos argumentos para a criação desse projeto. Começamos pela relação entre a escolha entre Ack Manual e Ack Automático e por que ack automático remove o benefício da resiliência no consumo de mensagens...
Habemus .NET ASPIRE
Estamos no último dia do Microsoft Build e sem sombra de dúvidas o maior lançamento dessa edição é o .NET ASPIRE. É hora de falar tudo que você precisa saber sobre a história recente que nos remete à criação do projeto e suas ambições. A conta não fecha Conforme...
.NET ASPIRE Dashboard Standalone como Container
Nessa sexta-feira dia 16 foi lançado o Dashboard do ASPIRE como uma implementação OTLP standalone, em uma imagem docker, pronta para uso. Entenda as novidades nesse post. Novidade no .NET ASPIRE, habemus dashboard para todos! Ontem, dia 16, David Fowler postou uma...
Logs Estruturados – Correlacionando Dados Técnicos com Eventos de Negócio
Introdução Em um mundo onde dado é o novo petróleo, a habilidade de extrair informações valiosas de um mar de dados é crucial. No contexto da observabilidade em arquiteturas de software, os logs estruturados desempenham um papel central. Eles não são apenas...
Comece sempre com 2 instâncias
Subir uma única instância de qualquer componente, seja uma API, um Worker ou um Job, pode parecer suficiente em fases iniciais. No entanto, a verdadeira eficiência e capacidade de resposta de uma aplicação só são testadas quando operam em múltiplas instâncias. Iniciar...
Cloud Native .NET com .NET Aspire – Primeiras Impressões
Um dos lançamentos do .NET Conf foi o .NET Aspire. Ele é um orquestrador de recursos (containers ou não), é um conjunto de building blocks para inicialização resiliente e observável dos principais recursos que sua aplicação pode depender. Diferente de tudo que já...
Keyed DI services e Como o uso de tipos como identidade penaliza o design
Nos últimos anos vimos muitas implementações que usam Tipos (classes ou interfaces) como discriminador único em diversos contextos. Essa é uma decisão prejudicial que torna o design mais burocrático, eleva a complexidade desnecessariamente. Como veremos nesse post o...
Lives
Fique de olho nas lives
Fique de olho nas lives no meu canal do Youtube, no Canal .NET e nos Grupos do Facebook e Instagram.
Aceleradores
Existem diversas formas de viabilizar o suporte ao teu projeto. Seja com os treinamentos, consultoria, mentorias em grupo.