É S3 mais barato que uma solução EC2 DIY (para arquivos pequenos) [fechada]

5

É realmente mais barato hospedar imagens e scripts via S3 do que com uma instância do EC2 executando nginx / verniz / etc. ?

Parece-me (mas estou apenas começando com a AWS) que os custos da solicitação serão o fator principal se você não usar sprites ou outras otimizações ... ou se estiver faltando alguma coisa?

    
por Jann 07.06.2010 / 20:29

5 respostas

2

Você está tentando comparar maçãs e laranjas aqui. Os serviços EC2 (Elastic Compute Cloud) e S3 (Simple Storage Service) da Amazon servem dois propósitos totalmente diferentes. O S3 é destinado a armazenamento redundante e não é um "servidor" em si. Sim, se você tivesse um servidor hospedado em outro lugar onde você poderia usar o S3 como uma forma de CDN usando o S3 junto com o Cloudfront, mas o objetivo principal é o armazenamento. O EC2, por outro lado, é um VPS (servidor privado virtual) que seria capaz de executar daemons como nginx, verniz, apache, etc. O S3 por si só não pode fazer isso por você.

Se você criar sua própria AMI (Amazon Machine Image) para um EC2, você as armazenaria no S3 e pagaria as taxas de armazenamento associadas a ela. Uma instância do EC2 pode ser executada sem qualquer uso do S3. No entanto, como mencionado, as instâncias do EC2 não armazenam dados após o desligamento quando a instância não está mais em execução. Para ter os dados retidos entre as startups & desligamentos você tem que armazená-lo no S3 ou usar um EBS (Elastic Block Store) que pode persistir os dados para você.

Existem diferentes níveis de preços na entrada de banda, saída e dentro de uma determinada região, bem como a capacidade de armazenamento, solicitações de I / O, etc. Isso fica complicado e existem várias calculadoras para ajudá-lo a descobrir. Escrevi minha própria planilha com fórmulas que importam meus downloads de CSV do histórico de uso para ajudar a estimar custos futuros de uso. Eu tenho gerenciado várias instâncias de servidor para um cliente no EC2 agora há mais de 9 meses. Descobri que o custo mais fácil de calcular é o tempo de execução da instância, pois é uma taxa por hora simples por instância. Depois que o volume do EBS e as capacidades de armazenamento do S3 são fáceis de calcular, mas as solicitações de E / S e a largura de banda podem ser surpreendentes às vezes.

Meus custos de armazenamento do S3 costumam ser bastante triviais (geralmente < US $ 2 / mês) e eu armazeno várias AMIs e alguns documentos que os servidores de aplicativos acessam, juntamente com a inicialização inicial das instâncias. Minhas instâncias usam um servidor Puppet mantido em um VPS fora da Amazon que também serve como meu servidor de monitoramento e jumpbox. Executando cerca de 7 instâncias, em média, descobri que minhas solicitações de I / O estão entre 5 e 8 milhões e custo < US $ 1 / mês em média. Nos últimos 6 meses, calculei a média de cerca de 10 GB nos volumes do EBS e isso custa apenas pouco mais de US $ 1 / mês. Eu uso volumes do EBS para meu conteúdo estático junto com meus arquivos de banco de dados MySQL e logs binários. A entrada de dados de transferência correu entre 20 e 24 GB e tem média de US $ 2,25 por mês, enquanto a saída ficou entre 241 a 326 GB e em média US $ 42 por mês. Minha largura de banda regional entre instâncias foi de 130MB a 535GB, pois nem todas as minhas instâncias estão nas mesmas zonas de disponibilidade e tiveram uma média de US $ 2,45 / mês. Tudo o que disse, como afirmei a taxa horária sendo o mais fácil de calcular, temos mais de US $ 1700 / mês para as próprias instâncias do EC2. No momento, estamos tentando migrar para instâncias reservadas e instâncias sob demanda, e isso deve cair para cerca de US $ 600 / mês após o custo inicial (US $ 6-9K) da obtenção da instância reservada.

    
por 08.06.2010 / 01:59
4

Com o S3, você está pagando pela transferência e pelo armazenamento. Com o EC2, você também está pagando pelo tempo que as instâncias estão sendo executadas. De qualquer forma, você está pagando pela transferência e pelo armazenamento, por isso deve ser mais barato em todos os casos apenas usar o S3 para hospedagem de arquivos. O EC2 deve ser sempre mais caro porque você está pagando pelo tempo que a instância está sendo executada, além do armazenamento e da transferência. A Amazon tem uma calculadora de preços que você pode usar para jogar com os números com base no seu próprio caso de uso e estimativa de transferência e armazenamento necessário.

    
por 07.06.2010 / 20:42
1

Hospedar arquivos estáticos no S3 é mais barato do que pagar por qualquer servidor dedicado para hospedar esse conteúdo. Ele também libera algumas dores de cabeça, como opimização de configuração do servidor http, gerenciamento de espaço em disco e problemas gerais do servidor.

Ele também oferece uma opção fácil de aproveitar o CDN (CloudFront) da Amazon, caso você queira melhorar ainda mais o desempenho do download para os visitantes do seu site.

    
por 15.12.2010 / 22:06
0

Você precisa levar em consideração a quantidade de tráfego que irá puxar os dados do s3 para o servidor da web. ec2 você paga por hora, mas recebe 160 GB de armazenamento local, s3 paga pelo armazenamento e pela largura de banda.

Em geral, eu diria que, para um servidor web, a instância ec2 será mais barata ou igual a s3. Mas dê uma olhada na calculadora de preços para verificar

    
por 07.06.2010 / 23:54
0

Como o S3 está essencialmente fornecendo um sistema de arquivos de rede distribuído, tente usar os nós do EC2 para construir isso.

O MongoDB / GridFS seria uma comparação atraente.

O S3 supostamente tem tempos limite de leitura / gravação de tempos em tempos e a criação de sua própria camada de cache também pode ajudar.

    
por 05.11.2010 / 07:26