.NET
Cloud Native e Cloud Agnostic
para rodar .NET em qualquer Cloud
ou sem Cloud sempre de forma profissional!
Últimas publicações
Aqui estão os últimos 12 posts de mais de 500…
Dev Week 2016 @ Canal .NET
Pessoal, essa semana está rolando o Dev Week 2016: São 5 dias, 16 palestras, todas as noites! A de segunda-feira já passou, mas isso não é um problema, todo o material fica disponível no Canal .NET, lá no youtube. A propósito, eu fecho a agenda da quarta-feira com o tema Arquitetura X...
.NET Core – Estratégias de Deploy – Parte 2
O post estava ficando grande demais então dividi em dois. O que era para ser um só, acabou virando 2 posts sobre .NET Core. O post anterior aborda o contexto necessário para que entenda quais são as estratégias de deploy. Nesse vamos efetivamente abordá-las. Estratégias de Deploy Agora que os...
.NET Core – Estratégias de Deploy – Parte 1
Olá pessoal, já faz algum tempo que não escrevo sobre .NET. Tenho me dedicado aos vídeos sobre Docker, mas escolhi um tema muito divertido para falar: Novas estratégias de deploy com .NET Core. Quem vem acompanhando os novos rumos da Microsoft, deve estar compreendendo que estamos diante de uma...
Docker – de A a Z – 16 – SQL Server for Linux
Pessoal, aqui vai mais um vídeo da série, e dessa vez uma demo, super simples e super rápida sobre o SQL Server for Linux. Vale lembrar que esse SQL Server on Linux é compatível com os providers e ferramentas que conhecemos e usamos no da-a-dia em qualquer aplicação, sua limitação está nos...
Windows Server 2016 – Overview
Desde que a Microsoft passou da era Steve Ballmer para a era Satya Nadella encontramos uma nova Microsoft. Muito mais flexível, muito mais competitiva, muito mais livre, sem rótulos e/ou bandeiras, mais madura e por fim, uma Microsoft definitivamente mais atraente ao olhar do mercado e da...
Docker – de A a Z – 15 – RabbitMQ, ElasticSearch , LogStash e Kibana
Durante a série Docker de A a Z, esse foi um dos Stacks entregues para facilitar a compreensão de como docker pode nos ajudar a unir soluções complexas, colaborando para criar stacks com diversos projetos e produtos. Esse stack serviu para a apresentação, mas também virou projeto e hoje é mantido...
Microsoft Virtual Academy – Microservices
Uma boa dica para quem quer conhecer MicroServices sob o ponto de vista da Microsoft é o MVA - Introdução à Microsserviços (em inglês). O conteúdo foi lançado dia 09/Junho e conta com os seguintes tópicos: Introdução a Arquiteturas de Serviço Introdução a Containers Azure Compute Platform e...
Docker Images – Nginx & Google PageSpeed
A internet como vemos hoje exige cada vez mais performance e cada vez melhor usabilidade. Nunca tivemos tanto apreço à experiência do usuário, assim produtos, ferramentas, serviços e frameworks são bem vindos para ajudar a entregar performance. Com o aumento nos recursos de interface, e a...
Docker – de A a Z – 13 – Bridge Network
Olá pessoal, nesse vídeo vou abordar as diferenças entre Default Bridge Network e redes User Defined Bridge Networks, as redes que geralmente criamos para nossos containers. As diferenças entre as redes bridge padrão e as que você cria é a capacidade de realizar descoberta de containers com base...
Docker – de A a Z – 12 – Demo MongoDB no Docker
Pessoal, uma das demos mais pedidas, MongoDB no Docker. Nessa demo vou apresentar o setup do MongoDB com e sem autenticação. Ficou muito legal! https://youtu.be/wpz8zUZW3kk O MongoDB se destaca com um dos bancos NoSQL mais utilizados no mundo, em projetos das mais distintas naturezas. É um projeto...
Docker – de A a Z – 11 – Demo MySQL e MariaDB no Docker
Quando se fala em banco de dados no docker, não é incomum esbarrarmos nesses 2 aqui: MySQL e MariaDB é uma das demos mais pedidas durante esse tempo, então vamos aos dois. Demo em dobradinha: MySQL e MadiaDB com Docker! https://youtu.be/NH5nBZESo2Y O MariaDB surge como um fork do MySQL quando a...
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…
Conteúdo
Docker – de A a Z – 15 – RabbitMQ, ElasticSearch , LogStash e Kibana
Durante a série Docker de A a Z, esse foi um dos Stacks entregues para facilitar a compreensão de como docker pode nos ajudar a unir soluções complexas, colaborando para criar stacks com diversos projetos e produtos. Esse stack serviu para a apresentação, mas também virou projeto e hoje é mantido...
Microsoft Virtual Academy – Microservices
Uma boa dica para quem quer conhecer MicroServices sob o ponto de vista da Microsoft é o MVA - Introdução à Microsserviços (em inglês). O conteúdo foi lançado dia 09/Junho e conta com os seguintes tópicos: Introdução a Arquiteturas de Serviço Introdução a Containers Azure Compute Platform e...
Docker Images – Nginx & Google PageSpeed
A internet como vemos hoje exige cada vez mais performance e cada vez melhor usabilidade. Nunca tivemos tanto apreço à experiência do usuário, assim produtos, ferramentas, serviços e frameworks são bem vindos para ajudar a entregar performance. Com o aumento nos recursos de interface, e a...
Docker – de A a Z – 13 – Bridge Network
Olá pessoal, nesse vídeo vou abordar as diferenças entre Default Bridge Network e redes User Defined Bridge Networks, as redes que geralmente criamos para nossos containers. As diferenças entre as redes bridge padrão e as que você cria é a capacidade de realizar descoberta de containers com base...
Docker – de A a Z – 12 – Demo MongoDB no Docker
Pessoal, uma das demos mais pedidas, MongoDB no Docker. Nessa demo vou apresentar o setup do MongoDB com e sem autenticação. Ficou muito legal! https://youtu.be/wpz8zUZW3kk O MongoDB se destaca com um dos bancos NoSQL mais utilizados no mundo, em projetos das mais distintas naturezas. É um projeto...
Docker – de A a Z – 11 – Demo MySQL e MariaDB no Docker
Quando se fala em banco de dados no docker, não é incomum esbarrarmos nesses 2 aqui: MySQL e MariaDB é uma das demos mais pedidas durante esse tempo, então vamos aos dois. Demo em dobradinha: MySQL e MadiaDB com Docker! https://youtu.be/NH5nBZESo2Y O MariaDB surge como um fork do MySQL quando a...
Docker – de A a Z – 10 – Demo Nginx no Docker
Docker e NGINX que tal? Uma excelente combinação que vou abordar, ainda que superficialmente em uma demo nesse vídeo. https://youtu.be/joJYBhG-cwY
Docker – de A a Z – 09 Docker For Windows
Pessoal, muita gente ainda tem dúvida sobre o Docker for Windows, aqui vai uma ajudinha para quem quer conhecer mais sobre o Docker for Windows. https://youtu.be/M4ZPSUw_RO8
Docker – de A a Z – 08 Amazon AWS EC2
Pessoal, aqui o papo já é sobre o setup de uma instância no EC2 da Amazon. https://youtu.be/YB6J4-MK1-k
Docker – de A a Z – 07 Microsof Azure
Pessoal, nesse vídeo vamos fazer o setup de uma máquina virtual com Docker no azure! https://youtu.be/lrGxTWimSr8
Docker – de A a Z – 06 – Docker Hub
Pessoal, aqui vamos entender um pouquinho como funciona o Docker Hub e como usá-lo. https://youtu.be/F-GJkcyrZR0
Docker – de A a Z – 04 – Instalação Docker no Ubuntu Server 16.04 LTS
Pessoal, já temos a máquina virtual com o SO, nos falta instalar o Docker, nesse vídeo vamos executar o procedimento de instalação do Docker no Ubuntu Server 16.04 LTS. https://youtu.be/44gecoWpUcs
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
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.
Arquitetura
[deprecated]Oragon Architecture News – Dez/2014
[deprecated]
Olá, como vai você. O novo período de hibernação se deu pela necessidade de esperar os novos direcionamentos da Microsoft se solidificarem e agora com o RC do ASP.NET vNext, há muito a rever e repensar no ler mais…
[deprecated] Oragon Architecture – Retomando os trabalhos
[deprecated]
Bom,
talvez você tenha notado que o projeto deu uma esfriada. O motivo dessa esfriada no dia-a-dia de posts e commits é que estou no meio de uma reestruturação no iMusica. A primeira demanda para remodelar o Oragon Architecture era justamente para mudar a dinâmica de hospedagem de aplicações, permitindo a hospedagem dinâmica de aplicações, onde cada App Host é configurado como um slave de uma Management Host. Com esse modelo, hospedar e cuidar de aplicações seria algo muito simples, pois todo App Host se comunicaria com o Management Host para informar seu estado, trocar configurações, publicar atualizações, de forma simples e eficiente, permitindo um acompanhamento em em real time.
Outra coisa legal desse novo desenho é possibilitar a transformação do deploy, que era comum, baseado em simples DLL`s e configurações, em NuGet Packages. Se as dependências já são pacotes NuGet, eu tenho problemas com gestão de pacotes da aplicação, nada mais justo que a aplicação também seja publicada como pacotes NuGet. A diferença entre publicar assemblies e publicar aplicações, é que o pacote da aplicação, não teria as DLL`s, apenas referências para os pacotes que sim contém as DLL`s. Desta forma até o reaproveitamento de pacotes da máquina é favorecido, onde toda a gestão de dependências ficaria a cargo do NuGet, e não mais sob minha responsabilidade.

Oragon Architecture
Boa parte desse fluxo já foi implementado, mas precisa ser revisto. A correria para a entrega gerou muita instabilidade no projeto e preciso rever algumas coisas antes de seguir em frente. Algum redesign será necessário, e o site de documentação nascerá em breve!
Bom, hoje volto a atuar no projeto, com certa dedicação que me é peculiar: Noites mal dormidas, mas por uma excelente causa! Muita vai acontecer com o projeto. Ele está bem maduro e bem estável. E embora esteja caminhando bem, ainda há muita coisa para ser feita. Se em Abril e Maio foram mais de 100 commits, tomara que nas próximas semanas sejam mais 200!
Vamos em frente! Tem muita coisa interessante para fazer, muita coisa para acontecer!
Grande abraço pessoal!.
[deprecated]Be welcome, now boarding, Oragon Architecture 7
[deprecated]
Bom,
a freqüência de posts está bem reduzida, e isso acontece em virtude da refatoração que estou fazendo no projeto. Nem lancei a release 7, e as features solicitadas já sugerem uma grande reestruturação.
What’s new
- Reestruturação dos metadados de troca de mensagem para tornar mais flexível e dinâmico. Permite estender a interface de management permitindo que sua aplicação hospedada envie parâmetros próprios para o Application Server.
- Novo e robusto deshboard!

Oragon Aaron .Net Aplication Server
- English Content! Bom, minha intenção inicial era criar uma wiki em PT-BR, mas tenho motivos e empolgação suficiente para anunciar que o material será em inglês!
- Um site próprio, será hospedado contendo uma extensa documentação para utilização e extensão.
- Algumas features movidas de Sprint:
- Toda a camada de abstração com RabbitMQ será recriada no novo Sprint. Embora já esteja pronta no iMusica, há questões de ética e design envolvidas, portanto será toda reescrita do zero.
- Oragon Architecture Application Server a partir de agora se chamará Oragon Aaron, .Net Application Server.
Um dia eu penso com calma se o projeto deve perder o termo “Architecture” do nome. De fato, se olharmos para o Brasil e a comunidade brasileira, fato que o nome é uma barreira por sí só!
Bom, o projeto segue, bombando. Com muita coisa interessante. Em breve, mais notícias!
[deprecated]Oragon.BuildTools.NugetTools – Utilitário de linha de comando para sincronizar arquivos NuSpec
[deprecated]
Olá, como vai você?
a partir da seguintes demandas, criei um executável utilizável de linha de comando que ajuda na atualização de Nuspec files.
Premissas
- Minha solution tem uns 25 projetos e são todas bibliotecas publicáveis no NuGet.
- Se tentar gerar os pacotes com base no CSPROJ, faltam metadados (assemblyInfo) para preencher todos os campos de metadados do Nuspec
- Além da falta de metadados no assemblyInfo, para alguns dos projetos, preciso de mais complexos (o csproj não contempla as informações que preciso) embora sejam poucos, eles existem.
Problemas endereçados
- Quando adiciono referências no meu projeto, isso não se reflete no nuspec do projeto, mesmo que estas sejam oriundas de pacotes nuget e atualizem o packages.config
- Os utilitários de linha de comando do Nuspec sabem gerar um novo nuspec, mas não sabem que meus projetos serão dependências nuspec dos próprios projetos, pois na mesma solution, é preferimos adicionar referências por projetos.
- Gosto de refactoring, e me proponho a cada funcionalidade revalidar o posicionamento e estratégia de empacotamento dos projetos, assim os projetos mudam. Funcionalidades são quebradas em novos projetos, e esse é o dia-a-dia. Ao começar a gerar pacotes nuget, percebi que perdi essa flexibilidade, por causa do esforço de atualização.
Oragon.BuildTools.NugetTools
Endereçando esses problemas, criei um projeto, bem simples. Não passam de 10 classes, está disponível em https://github.com/luizcarlosfaria/Oragon.BuildTools
Executando:
Oragon.BuildTools.NugetTools.exe /mergenuspec /solution="D:ProjetosOragon.Architecture[Source]OragonArchitecture.sln" /convertSolutionProjectsInNugetReferences /createNuspecIfNeed=".nugetNuGet.exe"
1) /mergenuspec
Obrigatório
Hoje é a única operação conhecida pelo projeto. Determina que será feito um merge entre seu CSPROJ e seu NUSPEC respectivo.
2) /solution=“D:ProjetosOragon.Architecture[Source]OragonArchitecture.sln”
Obrigatório
Determina o path completo do arquivo de solução. É com base nele que seus projetos serão identificados.
3) /convertSolutionProjectsInNugetReferences
Opcional
Referências de projetos são consideradas referências nuget com a mesma versão do seu projeto.
<dependencies> <dependency id="Common.Logging" version="2.2.0" /> <dependency id="Common.Logging.Core" version="2.2.0" /> <dependency id="Microsoft.AspNet.Cors" version="5.1.2" /> <dependency id="Microsoft.AspNet.SignalR.Core" version="2.0.3" /> <dependency id="Microsoft.AspNet.SignalR.SelfHost" version="2.0.3" /> <dependency id="Microsoft.AspNet.WebApi.Client" version="5.1.2" /> <dependency id="Microsoft.AspNet.WebApi.Core" version="5.1.2" /> <dependency id="Microsoft.AspNet.WebApi.Owin" version="5.1.2" /> <dependency id="Microsoft.Owin" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.Cors" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.Diagnostics" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.Host.HttpListener" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.Hosting" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.Security" version="3.0.0-beta1" /> <dependency id="Microsoft.Owin.SelfHost" version="3.0.0-beta1" /> <dependency id="Newtonsoft.Json" version="6.0.3" /> <dependency id="Oragon.Architecture.Bootstrap" version="7.0.0-alpha1" /> <dependency id="Oragon.Architecture.External.db4o" version="7.0.0-alpha1" /> <dependency id="Oragon.Architecture.ExtJS" version="7.0.0-alpha1" /> <dependency id="Oragon.Architecture.Icons" version="7.0.0-alpha1" /> <dependency id="Owin" version="1.0" /> <dependency id="Spring.Core" version="2.0.0-RC1" /> <dependency id="Spring.Services" version="2.0.0-RC1" /> <dependency id="Topshelf" version="3.1.3" /> <dependency id="Oragon.Architecture.ApplicationHosting" version="$version$" /> <dependency id="Oragon.Architecture.Serialization" version="$version$" /> <dependency id="Oragon.Architecture.Services.SpringFramework" version="$version$" /> <dependency id="Oragon.Architecture.Services" version="$version$" /> <dependency id="Oragon.Architecture.Web.Owin.OMvc" version="$version$" /> <dependency id="Oragon.Architecture.Web.SignalR.SpringFramework" version="$version$" /> <dependency id="Oragon.Architecture" version="$version$" /> </dependencies>
4) /createNuspecIfNeed=”.nugetNuGet.exe”
Se seu projeto ainda não contém um nuspec file, um será criado na pasta “PROPERTIES” de seu projeto.
O endereço do nuget.exe deve ser relativo ao endereço da solução.
Não se preocupe, O executável tanta achar seu arquivo nuspec do projeto dentro da pasta do projeto e dentro da pasta properties do projeto. Com qualquer nome. Se existir somente 1 arquivo, automaticamente assumo que esse é o nuspec do projeto, independente de suas configurações e nomes.
Quando um projeto não possui um arquivo nuspec e esse é criado (usando o parâmetro /createNuspecIfNeed), o arquivo nuspec será criado com o mesmo texto do AssemblieName definido no projeto (Project/PropertyGroup/AssemblyName). Esse mesmo nome será usado como ID e Title. E pode ser mudado a qualquer momento. Essas propriedades não são gerenciadas, apenas criadas quando não existe nuspec para o projeto.
4) /debug
Ao iniciar a execução, um prompt do visual studio será aberto para que você possa realizar o debug. Semelhante à janela de erro não gerenciado, quando executamos apps fora do ambiente de debug.
Informações adicionais
- O merge será realizado com base nas referências de seu projeto e nas referências explícitas no packages.config.
- Ao optar por usar o parâmetro “/convertSolutionProjectsInNugetReferences”, as referências de outros projetos da mesma solução serão marcados como nuget references (como exemplo, as linhas em vermelho do passo 2)
- Ao optar por usar o parâmetro “/createNuspecIfNeed”, será criado um pacote padrão, com algumas automações como:
- ID
- Title
- Authors
- Owners
- Version (será usado $version$, saiba mais sobre “Replacement Tokens” em http://docs.nuget.org/docs/reference/nuspec-reference)
- Seu arquivo NUSPEC antigo não é comprometido. Apenas as dependências são recriadas (com base no packages.config e dependendo do parâmetro /convertSolutionProjectsInNugetReferences também das referências do projeto). Demais atributos, valores e propriedades não são gerenciados.
Restrições
- Testado com soluções baseadas no Visual Studio 2013 (acredito que funcione em soluções do VS2010 e VS2012 também).
- Suporta apenas arquivo de projeto CSPROJ
- Suporta NUSPEC 2011/08.
O projeto é bem simples, mas ajuda bastante. Principalmente porque senti muita falta dessas features nativas no nuget.
Depois eu falo de integração contínua com jenkins, gerando pacotes e publicando-os! Esse assunto também é muito interessante
[deprecated]Apresentação Oragon Architecture
[deprecated]
Olá,
como vai você? Bom, espero que nesse dia das mães não esteja enfurnado no computador. Bom, do meu lado a minha fica distante de mais, em muitos os sentidos, portanto, lá vamos nós!
Hoje não vou falar muito, vou compartilhar apenas uma apresentação que fiz sobre algumas features do Oragon Architecture. A maioria já é bem conhecida, mas algumas outras são novinhas. Abaixo temos a apresentação, espero que goste. ler mais…
Containers
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.
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.

















![Nuget-600x300[1]](https://gago.io/wp-content/uploads/2014/06/Nuget-600x3001-300x150.jpg)
