Pergunta

Depois de um voto para baixo, eu humildemente percebi que meu post foi um enorme rant . Então eu editei e resumiu este para baixo a apenas a questão que eu realmente gostaria de saber. Peço desculpas por meus comentários impetuoso anteriores a esta edição;)

Parece que os únicos tutoriais lá fora, falando sobre o uso SimpleDB da Amazon em um site trilhos estão usando AWSDBProxy ... Pessoalmente, acho que esta contra-intuitivo para dimensionamento, considerando o layout do servidor de um site típico Rails abaixo (usando AWSDBProxy):

Plugin aqui: http://agilewebdevelopment.com/plugins/aws_sdb_proxy

Imagem aqui: http://www.freeimagehosting.net/uploads/91be4e0617.png

Como você pode ver, mesmo que adicionar mais vira-latas, nós temos dois problemas.

  1. Nós temos um ponto único de falha muito menos estável do que o nosso balanceador de carga
  2. Nós temos de forçar todas as nossas informações através deste servidor WEBrick

A solução é, naturalmente, para adicionar mais AWSDBProxies ... mas por que não então é só usar o seguinte código no digamos, uma classe, a ignorar o proxy todos juntos?

service = AwsSdb::Service.new(Logger.new(nil),
                                CONFIG['aws_access_key_id'],
                                CONFIG['aws_secret_access_key'])
service.query(domain, query)

Então, o que eu estou chegando, é se você são usando AWSDBProxy, o que você está justificativas para isso? E se você está realmente usá-lo, o que é o seu desempenho como? Se você tem números concretos, isso seria ainda mais apreciada!

Obrigado!

Foi útil?

Solução

Eu não estou usando ele, nem que eu já ouvi falar disso, mas isso é o que eu acho que são motivos razoáveis.

  1. Você está executando o seu servidor de aplicativo principal no EC2, assim a chance de Internet FALHA realmente não afetá-lo mais de uma vez.
  2. Você executar um proxy em cada um dos servidores de aplicativos. Então é conexão indo para baixo não é pior do que de conexão (s) para o banco de dados indo para baixo.
  3. Como isso pode ser feito. Esta é a razão um bom como qualquer em um projeto open source. Às vezes é preciso construir uma coisa antes de saber se disse coisa é uma boa / má idéia.
  4. Você não tem os níveis de tráfego precisar de um balanceador de carga. Em seguida, seu diagrama esmaga para baixo para uma linha, se não uma única máquina.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top