Log estruturado é um método de armazenamento de dados de registro em um formato pré-definido e organizado, facilitando a análise e busca de informações específicas. Neste post, discutiremos como usar o MessageTemplate do Serilog para log estruturado em aplicações.
Manipular listas é algo trivial no dia a dia do desenvolvimento. Existem casos em que são feitos filtros em uma grande quantidade de dados, o que pode ocasionar pressão no GC. Quando a lista possui pouco elementos é complexo detectar um possível problema, porém quando essa lista cresce, a dívida é cobrada. Uma forma de minimizar essa pressão é utilizando yield return.
Durante alguns ciclos e desenvolvimento é necessário que um dado serviço seja exposto para ser consumido na internet. Um típico cenário para isso é o desenvolvimento de webhooks. Em um cenário de webhook talvez seja necessário que um serviço externo sensibilize o endpoint que está sendo desenvolvimento. Entre as soluções mais tradicionais estão a publicação da aplicação em alguma plataforma serverless como por exemplo ECS, Beanstalk ou Hiroku. Esse artigo apresenta uma alternativa rápida, que expõe o seu serviço local.
Aplicações complexas tendem a ter um codebase grande onde muitas pessoas, com diferentes experiências e habilidades, atuam. O resultado disso tende a ser um spagetti-codebase ao longo do tempo. Como minimizar esse impacto e melhor a manutenção e evolução de um codebase?
Eliding task é uma técnica de otimização que atrasa o unwrap de uma Task e reduz a alocação de memória. Faz sentido sempre utilizar essa técnica?