.NET
Cloud Native e Cloud Agnostic
para rodar .NET em qualquer Cloud
ou sem Cloud sempre de forma profissional!
Últimas publicações
Cloud Native | 2 – A relação com Microservices
O que faz Microsserviços estar no coração do Cloud Native? Seria a forma de distribuir aplicações? Seria a forma de lidar com complexidade? Seria pela forma como usa recurso de cloud? Qual é a relação entre Microsserviços e Cloud Native? Hoje vamos abordar essa relação de proximidade! Não podemos...
RabbitMQ Operators | Entendendo Kubernetes Operators
Embora não seja comum ver conteúdo sobre o assunto, Operators está no coração do Kubernetes e esse definitivamente é um dos temas mais legais na minha opinião no que diz respeito ao projeto. Nessa série composta por 3 posts, vamos abordar step-by-step os 2 operators do RabbitMQ, mas hoje vamos...
Cloud Native | 1 – Definindo Cloud Native
Ao longo dos últimos anos Cloud Native tem estado em evidência. Há a oportunidade de retrocesso? É hype? Sempre teremos quem defenda que tudo é hype! Por quê com Cloud Native seria diferente? Na real, essas pessoas em geral adiam por anos o estudo por julgaram que algo é hype, até não conseguirem...
Porque as empresas vão continuar buscando seniors ao invés de júniores?
O apagão na TI é um fenômeno real, mas um fenômeno bem estranho do nosso mercado é a distância entre o JR e o estagiário, ou seja o profissional possível, e o profissional desejável. É sobre esses problemas que vamos discutir hoje. De um lado jovens querendo um emprego na TI, a nova mina e ouro do...
Bloqueio do Telegram – SITREP 02 – Quem vai pagar essa conta é você!
Hoje somos dezenas de milhares de profissionais de tecnologia amontoados em grupos do telegram. Nós nos ajudamos e fazemos da vida do desenvolvedor, devops, infra mais fácil, na medida que ele conta com suporte da própria comunidade. Cada comunidade técnica é composta por um grupo de pessoas...
Bloqueio do Telegram – SITREP 01 – Situação e Plano de ação
O bloqueio do telegram está causando histeria na comunidade técnica e em grupos privados. Aqui vou abordar 2 temas. Comunidades técnicas e Grupos de Alunos. Contexto Decisão do supremo demanda bloqueio do Telegram no Brasil. Como é realizado o bloqueio? Quando um país bloqueia um serviço de...
Os 6 níveis de maturidade no uso de Containers
Do usuário eventual ao heavy user, Docker consegue entregar diversas experiências de acordo com seu nível de maturidade e conhecimento. Se comparado com outras tecnologias, Docker e Containers em geral são assuntos pequenos, para poucas semanas de estudo. Mas embora a extensão do conhecimento não...
Além das 3 camadas | Containers
Docker está para o desenvolvimento de software como o IPOD esteve para a indústria da música. Não inventou a música portátil, mas revolucionou a experiência dos usuários. Se você trabalha com algum backend, java, .NET, node, python, ruby... e docker não está no teu radar, meu amigo... você tá...
RabbitMQ, .NET, OpenTelemetry, Distributed Tracing, Jaeger, Prometheus e Grafana
Parece sopa de letrinhas aleatórias né? Mas isso fez algum sentido para você, e achou legal, deixa eu te contar o que fizemos aqui do lado de dentro. Uma das demandas que tenho no curso de RabbitMQ para Aplicações .NET, é trazer conforto e clareza sobre o desenvolvimento de fluxos assíncronos com...
RabbitMQ | Eficiência | Como jogar dinheiro fora, case da Digital Ocean
A Digital Ocean é um Cloud Provider famoso e muito usado no mundo todo, mas nem por isso deixaram de cometer o amadorismo de usar bancos de dados como filas. E pior, para atender um throughput pífio! Conclusão: Mesmo sendo owners de infraestrutura, ou seja, com dinheiro infinito para infra,...
Event Driven Or Not? Quando usar Event Driven e quando usar só usar mensageria
Sempre que somos tocados por algum tipo de desenho ou arquitetura que demonstra significativo ganho em um determinado cenário, tendemos a tentar reaproveitar esse mesmo desenho mais pela memória do sucesso passado, do que pela necessidade efetivamente. Aqui está uma casca de banana, e é sobre isso...
Além das 3 camadas | Componente: CDN e Cache
Já falamos de práticas e tecnologias, agora vamos falar de um componente o CDN. Ele é fundamental para a internet como a conhecemos hoje. Da netflix que você assiste, ao gaGO.io, você vai encontrar CDN para reduzir a pressão sob as aplicações, e para reduzir a latência entre o conteúdo e você,...
Projetos Open Source
projetos ativos e projetos antigos disponíveis para estudo
Nenhum resultado encontrado
A página que você solicitou não foi encontrada. Tente refinar sua pesquisa, ou use a navegação acima para localizar a postagem.
Entender | Analisar | Projetar | Desenvolver | Implantar | Manter
A segurança que você busca não está em um tutorialPara entender uma tecnologia é importante entender o que influenciou sua criação, o que ela faz de fato, como ela faz. Para que então se sinta seguro e confiante a respeito das decisões que está prestes a tomar.
De um lado precisamos compreender o que está sendo feito por baixo dos panos para descobrir como extrair o máximo de uma tecnologia ou, ao menos, não atrapalhar o bom funcionamento dela.
O Cloud Native .NET é uma jornada de descoberta sobre tecnologias e patterns que fazem parte da maioria dos softwares que usamos, que somos usuários e que suportam e toleram altas cargas de trabalho, de forma eficaz, eficiente e sustentável.
É primeiro entendendo o que eles fazem, que podemos descobrir oportunidades e evoluir no que fazemos…
Conheça nosso Podcast
DevShow PodcastEm 2019 resolvemos criar um podcast, o DevShow Podcast, desde lá são mais de 40 episódios com muito assunto legal, sempre com essa pegada pessoal, falando coisas sérias, mas sem o menor compromisso com a formalidade.
.NET
Modelagem de software como Pequenas peças de lego
Talvez você não concorde com essa visão, já vi isso acontecer antes. Mas algo que você nunca poderá negar é a experiência alheia. E nesse caso a minha experiência década-após-década com esse tipo de abordagem vem mostrando resultados fantásticos. SOLID não é só um conjunto de regras aleatórias de qualidade, elas proporcionam real reaproveitamento, e faz parte da modelagem isolar as partes do software em elementos de forma a parecerem pequenas peças de lego, que juntas compõem coisas incríveis, mas facilmente podem ser aplicadas a outros contextos AS-IS, sem mudança alguma. Estou falando de abstrações, configurações e estratégias de modelagem que favorecem o reaproveitamento.
Novidades – Q3/2018 – Oragon Spring.NET, AOP, Open ALM
Bom, galera, muita coisa está acontecendo. Vamos às novidades de Q3/2018, vou precisar enumerá-las para deixar as coisas às claras.
API Load Testing com artillery
Qual é o throughput médio de minha API? Será que essa nova implementação está consumindo mais ou menos recursos? Há algum memory leak? Bom, algumas informações só podem ser vistas quando você roda um tipo específico de testes, o teste de carga. Artillery te ajuda a executar cargas de trabalho intensivas em sua API, e isso pode ser feito na sua máquina, sem muito esforço, você só precisa ler esse post e executar alguns poucos passos! .
Oragon.Spring
Se você caiu de paraquedas aqui e não entendeu nada do assunto, calma eu vou explicar. O Spring.NET é um container IoC super robusto, mas não caiu na graça da comunidade. Uns reclamam de lentidão, outros reclamam do xml outros reclamam por ter sido inspirado no Spring do java. Eu gosto e defendo sua abordagem, o Spring.NET é alicerce das minhas arquiteturas no .NET Framework, e já faz muito tempo que sinto falta dele no .NET Standard / .NET Core. No post Spring.NET o Renascimento eu fiz um overview sobre o assunto, mas há muito mais assuntos relacionados quando olhamos para tags como Dependency Injection, DI, Inversion Of Control, IoC, e claro, não poderia faltar Spring.NET. A questão é: Agora, oficialmente, estou tocando um fork do projeto, quer participar? Fale comigo!
5 atitudes infalíveis para fracassar em um projeto de software
Você já deve ter lido 5 formas de obter sucesso em blablabla, mas com uma quantidade tão de grande de projetos fracassados, não fracassar é um bom começo. A propósito, existem milhares de atitudes infalíveis para se obter o fracasso, a pior é não fazer nada! Mas se você chegou até aqui, você não é daqueles que desistem, então vou listar para você 5 das atitudes negativas que levam qualquer projeto ao fracasso!
Arquitetura
Kubernetes em C#, seria possível?
Você já pensou em criar seu próprio Kubernetes em C#? Hoje eu vou mostrar como você pode dar os primeiros passos nessa direção.
ler mais…RabbitMQ – Guia de Estudo Gratuito 2021
RabbitMQ é simples e incrível. São apenas 4 componentes. Relativamente simples, mas cada um tem detalhes que escondem ouro.
Se você conhece estruturas de filas, pode pensar que já sabe do que se trata. E é aí que mora o engano. O RabbitMQ não é simplesmente uma infraestrutura de filas, é um Message Broker. Essa categoria exige que tenha habilidades que vão muito além de simplesmente possuir filas FIFO. Há detalhes que levariam semanas ou meses para implementar e anos para estabilizar, dependendo da linguagem.
Por isso defendo seu uso nos cenários mais variados.
ler mais…Kubernetes sem Docker! É o fim do docker?
Ontem a comunidade parou diante da notícia de que o Kubernetes não daria mais suporte ao Docker como Container Runtime. Mas afinal, qual o impacto real dessa decisão na sua vida? Como isso influencia seu dia-a-dia?
ler mais…Service Mesh vs API Gateway vs Proxy Reverso
Durante a live de kong da semana passada rolou uma dúvida bem pertinente, mas como a live já estava com 3 horas e 30 min, não dava para continuar por mais 2 horas para conseguir contextualizar e falar sobre o tema. Então resolvi escrever esse post.
(mais…)Abstrações duplicadas, quem nunca?
Quando uma abstração está exercendo seu papel, seu código tende a cada vez parecer mais simples. Ao olhar desatento pode parecer até simplista. O problema é que essa simplicidade ao mesmo tempo que aumenta a produtividade, produz ansiedade e afeta quem depende de complexidade para programar.
ler mais…Containers
Tenha um Cluster Docker Swarm por quase um almoço!
Se você estudou docker, já pensou em criar um cluster para fazer alguns testes. Se você desistiu por que achou caro, seus problemas acabaram! Por € 11,97 (R$ 53,51) por mês, você pode ter um cluster swarm modesto, composto por 4 nós, cada um com as seguintes specs:
Message Broker & .Net Core – Introdução ao RabbitMQ
Pessoal, no dia 15/Fev batemos um papo no Canal .NET com o título Message Broker & .Net Core – Introdução ao RabbitMQ. Nesse bate-papo apresentamos RabbitMQ como Message Broker, mas com foco no AMQP, que por sua vez desponta como principal standard, amplamente utilizado e implementado por diversos serviços, projetos e produtos, oferecendo maior flexibilidade na hora de escolher sua implementação de message broker.
Na narrativa abordei modelos de integração mais antigos, até uma implementação com AMQP, mostrando features, e algumas dicas valiosíssimas que ajudam no entendimento de alguns elementos, que a princípio parecem não fazer muito sentido, mas depois se mostram valiosíssimos dada a sua simplicidade e flexibilidade.
Hangout (Gravado)
Se você quer saber mais sobre RabbitMQ, AMQP, e conhecer algumas demonstrações de uso, fique de olho aqui no site pois tem muito conteúdo a respeito.
Apresentação
[slideshare id=88038393&doc=20-rabbitmq-180215092334]
Demos e Código Fonte
RabbitMQ – Exemplos de Setup
RabbitMQ no Docker (Este projeto consistem em um conjunto de dockerfiles que demonstram as diversas formas de configurar e habilitar plugins no RabbitMQ)
No github separei em um modelo gradativo do mais simples para o mais complexo, adicionando features a cada nova pasta: Gradualmente adicionei vhosts à configuração, depois volumes, plugins (management, mqtt, stomp, nativo e com suporte web), até termos uma instância full featured.
Apresentei também demos com AMQP + .NET Core além de MQTT e STOMP usando as páginas de exemplo que vão embarcadas no RabbitMQ.
O código está no meu github: https://github.com/luizcarlosfaria/CanalDotNet-MessageBroker
Youtube Downloader
As demos anteriores são muito boas, mas precisava mostrar algo mais “real”, então apresentei esse projeto. Esse foi um projeto que serviu de narrativa entre dezembro e fevereiro, me ajudando a apresentar cenários reais de uso de RabbitMQ entre outros diversos elementos. A segunda demonstração foi pautada sob esse projeto e seu código fonte está disponível no github.
https://github.com/luizcarlosfaria/youtube-downloader
Docker Compose: simplificando o deployment de aplicações
O Docker Compose é um serviço do próprio Docker voltado à criação e execução conjunta dos múltiplos containers de uma aplicação. Tal capacidade contribui para facilitar o deployment de um projeto em diferentes ambientes.
Além disso, o Docker Compose é considerado uma alternativa extremamente útil em cenários que envolvam a implementação de uma arquitetura de microsserviços.
Esta tecnologia foi abordada em detalhes num evento online recente do Canal .NET:
Chakra on .NET Core with Docker
Scripting pode não ser uma demanda corriqueira, mas há momentos em que sua flexibilidade faz jus à sua utilização. Seja para deixar alguma pequena parte de sua aplicação mais flexível ou para poder suportar extensibilidade, há cenários bons para seu uso. Hoje vou abordar como usar o JSRT (Javascript Runtime) da Microsoft, motor do Microsoft Edge, o Chakra em uma aplicação .NET Core, rodando em um container linux com Docker.
Docker – de A a Z – 19 – Youtube Downloader – Novidades #01
Pessoal, esse é o primeiro pacote com novidades sobre o projeto. Nosso diagrama de causa-efeito-ação chega a sua 5a versão com muitas novidades, incluindo:Adição do MongoDB, agora fazendo encoding de MP3 com FFMPEG, possibilitando o download de MP3 que já está em dev, além de stream parcial (que permite utilizar o controle de tempo da tag video do html5) e várias correções, além de uma nova implementação “duvidosa”. Mas essa eu não vou contar aqui, você terá de olhar no github, mais especificamente em um commit que nesse momento só está presente na develop.
Fique atento às modificações nas imagens abaixo. Essas imagens representam novidades que criei e estão publicadas em dev (http://devweek04.gago.io:20001/), enquanto isso prd (http://devweek04.gago.io/) continua com a mesma implementação antiga. Nesse momento faz bem deixar assim, já que torna possível visualizar as diferenças.
Mensageria
Nenhum resultado encontrado
A página que você solicitou não foi encontrada. Tente refinar sua pesquisa, ou use a navegação acima para localizar a postagem.
Conteúdo e Posicionamento
.NET + Cloud Native + Cloud Agnostic
.NET | DevOps | Microservices | Containers | Continuous Delivery
.NET muito além do .NET
O mínimo de infra que todo dev e/ou arquiteto deveria saber
Aplicações distribuídas e comunicação entre serviços (RabbitMQ / gRPC)
Containers, Docker e Kubernetes
RabbitMQ e Mensageria e comunicação assíncrona entre aplicações e serviços
Arquitetura de Software e Arquitetura de Solução com foco no melhor aproveitamento em projetos .NET
Nossos números
Desde 2002 trabalhando com desenvolvimento de software
Desde 2002 ajudando outros devs
Desde 2010 trabalhando exclusivamente como arquiteto
Contas atingidas no telegram/facebook
Alunos
Microsoft MVP
Conteúdo Gratuito
Tudo que está aqui no gaGO.io é conteúdo gratuito, feito para ajudar desenvolvedores dos mais variados níveis.
Cursos
Tenho também alguns programas de acompanhamento. Esses programas tem a função de ajudar desenvolvedores em áreas específicas ou de forma mais abrangente na jornada do arquiteto.