Computação distribuída por meio do AWS

1

Eu sei que é possível equilibrar o tráfego usando instâncias de ELB / EC2, mas existe alguma maneira de distribuir cálculos de CPU em um cluster de instâncias.

Estou querendo processar muitos vídeos / áudio usando o ffmpeg, mas se o servidor ficar muito lento, eu gostaria de poder gerar outra instância com a mesma configuração para tirar parte da carga do servidor principal . Pense nisso como uma mini fazenda de processamento

É o que eu estou procurando fazer com a amazon, se é, o que eu deveria estar procurando em termos de documentação e serviços da AWS? Obrigado

    
por Jamie Taylor 14.08.2012 / 15:52

3 respostas

2

A esse respeito, as instâncias do Amazon EC2 não são diferentes de qualquer outro hardware.

Sim, existem frameworks que ajudam na computação em cluster, mas não é simples, e certamente não há nenhum pacote "mágico" que você possa instalar para que funcione.

Seu aplicativo precisará ser escrito com o paralelismo / agrupamento em mente para que ele tenha qualquer chance de funcionar, e se ele funcionará ou não dependerá muito da sua carga de trabalho específica.

    
por 14.08.2012 / 15:54
0

O OP já aceitou a resposta do @ ErikA, mas vou postar algumas outras ideias. Embora seja verdade que as instâncias do EC2 não oferecem nada diferente de outro hardware, o mesmo não acontece com a AWS como um todo. Existem vários serviços criados especificamente para distribuir computação e serviços em mini (ou maxi-) farms de processamento.

Existem alguns ótimos recursos disponíveis que descrevem como fazer o processamento de vídeo usando o conjunto de serviços da AWS. Sugiro começar com o Estudo de caso Encoding.com e, em seguida, aprofundar um pouco em alguns as áreas de computação do Centro de arquitetura .

A combinação de serviços disponíveis é única: EC2 e Elastic Beanstalk para recursos de computação, S3 para armazenamento de blobs em grande escala, SimpleDB para armazenamento de blob pequeno (metadados) e SQS / SWS para suportar mensagens e distribuição de tarefas. Você pode certamente projetar e implantar sistemas que façam alguma ou todas essas coisas, mas com uma conta da AWS, você pode ativar todo o conjunto de tarefas nesta tarde.

    
por 14.08.2012 / 20:40
0

Uma nova resposta para a computação distribuída da AWS é o AWS Lambda. Ele basicamente permite executar funções JavaScript sob demanda, em diferentes máquinas em nuvem, sem que você precise fazer nenhum provisionamento de configuração / desmontagem. Você paga apenas pelo tempo em que o código é executado e não precisa configurar um cluster de servidor para aguardar pelos trabalhos.

AWS Lambda automatically runs your code on high availability compute infrastructure and performs all the administration of the underlying compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code and security patch deployment, and monitoring and logging. All you need to do is write the code.

link

    
por 18.03.2015 / 19:37