Pergunta

Eu tenho avaliado a pilha de tecnologia para desenvolver um aplicativo baseado em rede social. Abaixo estão a pilha que eu acho que poderia muito bem para este tipo de aplicativo de aplicativo:

GUI - ASP.NET MVC, Flash (Flex)

Serviços prestados às empresas - Serviços baseados em economia uma das vantagens de usar THRIFT é resolver problemas de escala que virão no futuro quando a base de usuários aumentar rapidamente. Toda a lógica de negócios pode ser exposta como um serviço usando REST, JSON etc., isso também nos permite ir com serviços baseados em C ++ ou Erlang quando a situação exigir.

Base de dados - mysql, CassandaraO MySQL pode ser usado para armazenar os dados que precisam ser persistidos. Cassandara será usado para armazenar identificadores globais nos dados persistentes. Como Cassandara também é muito bom em escalar, introduzindo mais nós, isso também aproveitará os serviços baseados em economia. E também há apoio nativo entre Cassandara e Thrift

Servidor de cache - Memcached

Quaisquer solicitações da Business Services falarão apenas com o Memcached se forem necessários dados sem direção, caso contrário, haverá alguns trabalhos em segundo plano que invalidarão o cache do banco de dados.

A questão é:

  1. O Thrift que é de código aberto é pronto para produção?
  2. É a pilha certa para a camada de serviços escolher quando o aplicativo (GUI) é desenvolvido principalmente no ASP.NET e DB é o MySQL?
  3. Há outras advertências que alguém aqui experimentou?

Um dos principais objetivos por trás dessa pilha é escalar facilmente com mais nós e isso também nos ajuda a usar caixas Linux, reduzirá nosso custo significativamente

Pensamentos, por favor ..

Foi útil?

Solução

Você não fornece detalhes sobre o seu modelo de dados, mas se você está tentando fazer algo semelhante ao Facebook, Twitter, Digg ou Reddit, Cassandra deve ser um bom ajuste, pois, ao saber que essas empresas estão usando Cassandra.

Uma das vantagens do Cassandra é que você não deve precisar de uma camada de armazenamento em cache separada: os caches embutidos de Cassandra e os caches-linhas e a capacidade de apenas adicionar máquinas para escalar, tornar o memcachado desnecessário.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top