RabbitMQ e .NET – Usar ou não usar bibliotecas?
Nesse post detalho meus argumentos para que você não use nenhuma abstração e use o cliente nativo do RabbitMQ feito para .NET.
(mais…)Nesse post detalho meus argumentos para que você não use nenhuma abstração e use o cliente nativo do RabbitMQ feito para .NET.
(mais…)Nem sempre as demandas exigem filas que durem aos restarts da sua aplicação. Há casos de uso significativos em que você quer que a fila nasça com a instância da sua aplicação e morra junto com ela.
Embora seja um conceito trivial, em mais de 10 anos usando RabbitMQ, essa foi a primeira vez que tive de fato essa a necessidade de adotar essa abordagem.
(mais…)Muitas e muitas vezes me envolvi em discussões sobre responsabilidades sobre serviços de suporte e tudo que está ao redor das nossas aplicações, como Proxy Reverso, API Gateway, Cache Server, Mensageria, Vault, Plataforma e por aí vai.
Afinal, quem é o Owner dessas tecnologias e ferramentas?
Será que são de responsabilidade da galera de Operações?
Spoiler: Essas tecnologias fazem parte do produto, estão nos aspectos não funcionais dele, mas não deixam de fazer parte dele, portando são da equipe constrói o produto. E, portanto, estão muito mais próximos da jornada do Arquiteto do que da jornada de Ops.
Hoje compartilho minha visão e meus argumentos. Esse post é parte de uma sequência que demonstrará como economizei mais de 1 milhão de reais em infraestrutura nos últimos 4,2 anos.
(mais…)Eu estava escrevendo sobre logs estruturados, em especial sobre o Enterprise Application Log, e resolvi quebrar meus argumentos em frações menores para poder isolar as ideias.
Aqui hoje quero falar sobre o que um bom log deve ter.
(mais…)Em um mundo cada vez mais voltado para a tecnologia, a arquitetura de soluções desempenha um papel crucial na orientação de como as organizações desenvolvem e implementam suas estratégias digitais. No entanto, a maneira como apresentamos e comunicamos essas arquiteturas pode muitas vezes ser um desafio. Tradicionalmente, a visão de desenhos arquiteturais têm se concentrado em fornecer “snapshots” estáticos de uma arquitetura em um determinado ponto no tempo. Eles são fundamentais para uma visão clara da arquitetura, mas esses modelos podem não capturar completamente a complexidade e a natureza evolutiva de uma arquitetura de soluções.
Este post é destinado a desenvolvedores, aspirantes a arquitetos de software, arquitetos de soluções profissionais e qualquer pessoa interessada em explorar novas maneiras de visualizar e entender a arquitetura de soluções. Aqui, discutiremos uma nova abordagem para apresentar roadmaps de arquitetura de soluções, uma que vai além dos diagramas de arquitetura e conta uma história sobre todo o ciclo de vida evolutivo da arquitetura.
Em vez de se concentrar em um único ponto no tempo, este novo modelo apresenta a arquitetura como uma linha do tempo, com ação e reação. Ele permite que você veja como a arquitetura evoluiu ao longo do tempo, destacando as relações de causa e efeito, problema e solução. Ao fazer isso, esperamos que este modelo ofereça uma visão complementar e rica da arquitetura de soluções, ajudando a melhorar a comunicação entre as partes interessadas e a facilitar a tomada de decisões estratégicas.
Então, se você está pronto para explorar uma nova maneira de pensar roadmaps de arquitetura, continue lendo. Estou animado para compartilhar essa jornada com você.
(mais…)Nos últimos meses venho experimentando o ChatGPT e a API dos modelos GPT 3.5-turbo e GPT 4.0.
Como sempre esse assunto foi compartilhado na mentoria, e naturalmente consigo encontrar dúvidas que não me pareciam óbvias.
Esse é um guia que pode te ajudar a pensar nas possibilidades e também permite que você dê seus primeiros passos.
(mais…)Uma das ferramentas que mudou minha carreira foi sem dúvidas o RabbitMQ.
RabbitMQ, embora tenha Coelho no nome, se comporta mais como um cavalo selvagem e arisco.
Mensageria, Aplicações assíncronas e Aplicações distribuídas são mais complexas, mas dão um poder que poucos no mercado conseguem compreender, e hoje quero trazer um pouco dessa experiência acumulada ao longo de uma década usando RabbitMQ em produção em projetos de todos os tamanhos.
Hoje é dia de falarmos de RabbitMQ.
(mais…)Quando se fala em WebAssembly no universo .NET, é comum pensar imediatamente no Blazor, não é mesmo?
No entanto, para mim, a imagem que surge é a revolução que o WebAssembly no backend pode desencadear. Imagina mudar completamente a maneira como construímos, encapsulamos, hospedamos e gerenciamos sistemas, criando uma interoperabilidade inédita.
Não me refiro ao WebAssembly em navegadores. Estou falando sobre o WebAssembly no SERVIDOR, muito além dos limites dos browsers!
E o que estou prestes a revelar não tem qualquer relação com o Blazor!
Estamos falando de algo tão surpreendente quanto poderoso!
Sei que muitos ainda estão fascinados com o Blazor e com o WebAssembly no browser.
(mais…)Hoje pela manhã me deparei com uma postagem que me chamou a atenção. Uma compartilhamento de um post que trazia um comentário sobre a Amazon Prime Video, contanto como eles estavam voltando de Microsserviços /Serverless para um Monolito.
Como se não bastasse, fui conferir o post e a headline diz:
Ampliação do serviço de monitoramento de áudio/vídeo Prime Video e redução de custos em 90%
A mudança de uma arquitetura de microsserviços distribuídos para um aplicativo monolítico ajudou a obter maior escala, resiliência e reduzir custos.
Hoje esse será o tema do nosso papo aqui.
(mais…)Acontecimentos recentes se desdobraram em bloqueio do telegram. Desde a noite de quarta-feira estamos sem Telegram em todo o território nacional.
Assim, o mensageiro deixou de ser uma opção para nossas comunidades de alunos.
E com isso fomos obrigados a abandonar o Telegram para ir para o Discord.
(mais…)