Redis, MongoDB, RabbitMQ, Sentry e muito mais que o mundo Linux pode oferecer para aplicações .Net
Publicado em: domingo, 23 de mar de 2014
Categorias: Architecture

Se você não conhece nenhuma dessas soluções, vou fazer um breve apanhado sobre as capacidades de cada uma delas.

Redis ( http://redis.io/ )

Redis é um Key-Value Storage. Basicamente um tipo de NoSQL baseado em chave-valor. Nele armazenamos objetos complexos. É uma solução muito útil para cache, entre outras abordagens. Se você já usou SharedCache, Memcached, e outras soluções de cache, sabe muito bem do que estou falando. Para você que nunca usou, pense que quando a descoberta de um dado é relativamente custosa, armazenar esse dado em um cache é uma das primeiras estratégias para garantir carga em seu site ou aplicação. Com um cache server você armazena seus objetos, determina um tempo de expiração para o objeto que está armazenando, e na medida que a aplicação vai sendo utilizada, cada vez mais você deixa de executar aquele longo processamento para entregar dados já processados que estão no cache. Já vi pessoas dizendo que o esforço para ir a um cache de rede e entregar um resultado a partir dele possa parecer infundado, mas quando você recebe milhares de requisições por segundo, processar algumas queries a cada request te custam caro, muito caro.

MongoDB ( https://www.mongodb.org/ )

Não há quem não tenha lido sobre NoSQL que não tenha ouvido falar nele. MongoDB é uma das soluções NoSQL mais conhecidas e usadas pelo mercado. Mas admito considerar que nossa relação esteja por um fio. De qualquer forma, se você pode usar um document store em seu ambiente de produção, MongoDB é sempre uma solução a se pensar.

Existem diversos fatores que te fazem pensar em NoSQL, seja por flexibilidade, performance, e capacidade de lidar com volumes dados realmente grandes. MongoDB sempre terá seu espaço. Mas considere o Couchbase como alternativa, eu venho olhando para o produto com um olhar muito benevolente nos últimos meses.

RabbitMQ ( https://www.rabbitmq.com/ )

Nessa área, embora o RabbitMQ tenha se mostrado uma das melhores soluções do mercado, existem diversas alternativas. O principal motivador para usar filas, invariavelmente é pensar em modelos assíncronos e escaláveis de processamento. A adoção do RabbitMQ se dá pela implementação do standard AMQP, esse sim merece muito sua atenção. Se você ainda usa MSMQ, principalmente! MSMQ está fadado ao fracasso e a tendência é que a Microsoft ofereça um serviço AMQP fora do Azure. Acredito que o Service Bus for Windows Server já esteja compatível com AMQP, mas a adoção de AMQP no Azure é o principal sinal de que todo o mercado, inclusive a Microsoft, estão convergindo para padrões universais, inclusive no quesito message broker.

Sentry ( https://getsentry.com/ )

O Sentry me foi apresentado por um rapaz que trabalha comigo, e admito nunca ter sequer chegado perto dessa solução antes disso. Já conhecia o LogEntries e ao conhecê-lo adito ter me frustrado muito, principalmente por estar planejando um produto exatamente assim. Fato que criei o LogEngine, que por sua vez tinha uma performance muito boa se comparado a estes, mas me faltou braço para criar a interface Web. O Sentry vem como uma solução centralizada para armazenamento e visualização de eventos de aplicação, servindo para que você tenha um console completo com tudo o que acontece com sua aplicação.

E o Linux?

O que todas essas soluções trazem de interessante é que foram concebidas para performar melhor em ambiente linux, mas nem por isso, soluções baseadas em tecnologia Microsoft não podem se valer do grande benefício que esses serviços nos prestam. Ter um parque heterogêneo não é fácil, mas podemos usar o melhor que cada mundo tem a nos oferecer!

Enfim sem bairrismo, use aquilo que te ajuda a te entregar mais, com menos!

E você, está usando outros serviços hospedados em servidores linux que podem ajudar aplicações .net? Quais?

Luiz Carlos Faria

Mensagem do Autor

Espero que goste desse post. Não deixe de comentar e falar o que achou. 

Se acha que esse post pode ajudar alguém que você conheça, compartilhe!

 

Eventos passados

agosto 2020
julho 2020
Nenhum evento encontrado!
Carregar Mais

Publicidade

Assine

2 Comentários

  1. Marcos

    É como pegar um motor de uma Ferrari, caixa de marchas de uma lamborghini e os bancos de um Camaro para equipar um Fusca da Microsoft.

    Responder
    • Luiz Carlos Faria

      Marcos, há uma desconexão incrível entre teu argumento e realidade. Nossos banchmarks com .NET Core são incríveis, acho que vale uma pesquisa.
      A propósito, te convido a conhecer o que temos feito de open source e o que fazemos no dia-a-dia junto à comunidade. Temos muito a aprender, mas estamos no caminho certo, acredito que seria uma incrível experiência programar em C#, no Visual Studio, seja para windows ou para linux.
      Eu tenho feito muito esforço para que narrativas como essa que postou aqui nos comentários não existam mais.

      Responder

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

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.

Agenda & Eventos

agosto

setembro 2020

outubro
DOM
SEG
TER
QUA
QUI
SEX
SAB
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
Events for 1st setembro
Sem Eventos
Events for 2nd setembro
Sem Eventos
Events for 3rd setembro
Sem Eventos
Events for 4th setembro
Sem Eventos
Events for 5th setembro
Sem Eventos
Events for 6th setembro
Sem Eventos
Events for 7th setembro
Sem Eventos
Events for 8th setembro
Sem Eventos
Events for 9th setembro
Sem Eventos
Events for 10th setembro
Sem Eventos
Events for 11th setembro
Sem Eventos
Events for 12th setembro
Sem Eventos
Events for 13th setembro
Sem Eventos
Events for 14th setembro
Sem Eventos
Events for 15th setembro
Sem Eventos
Events for 16th setembro
Sem Eventos
Events for 17th setembro
Sem Eventos
Events for 18th setembro
Sem Eventos
Events for 19th setembro
Sem Eventos
Events for 20th setembro
Sem Eventos
Events for 21st setembro
Sem Eventos
Events for 22nd setembro
Sem Eventos
Events for 23rd setembro
Sem Eventos
Events for 24th setembro
Sem Eventos
Events for 25th setembro
Sem Eventos
Events for 26th setembro
Sem Eventos
Events for 27th setembro
Sem Eventos
Events for 28th setembro
Sem Eventos
Events for 29th setembro
Sem Eventos
Events for 30th setembro
Sem Eventos
Share This