Carregar arquivos para o Amazon AWS

4

Sou novo no Amazon AWS e relativamente novo no Web hosting em geral. Eu usei anteriormente Bluehost para hospedagem na web, mas minha empresa está mudando para a AWS. Eu estou querendo saber quais são as melhores práticas para o upload de arquivos php, html e css. Estamos constantemente adicionando e aprimorando as páginas em nosso site e eu preciso saber como encaixar isso na maneira AWS de fazer as coisas.

Anteriormente, simplesmente usamos um cliente de FTP para alterar os arquivos em nosso servidor. Agora eu usei o Elastic Beanstalk para configurar nossa pilha e descobri como usar o programa FTP para fazer upload de arquivos para um volume EC2 usando SFTP. No entanto, quando uma nova Instância é iniciada, ela não contém as alterações mais recentes.

Eu sei que com o Elastic Beanstalk eu poderia fazer o upload de uma nova versão, mas eu realmente não quero ter que zipar, carregar e implantar uma nova versão de todos os meus arquivos, mesmo que eu tenha feito apenas uma pequena mudança.

Não hospedamos um site estático. Fazemos uso muito pesado de um banco de dados MySQL para gerar e alterar páginas.

Existem melhores opções por aí? Idealmente, eu teria um lugar para manter meus arquivos php etc e quaisquer instâncias em execução receberiam os arquivos de lá.

Qualquer ajuda, direção, tutoriais são muito apreciados. Obrigado

    
por TimSum 07.01.2013 / 18:29

2 respostas

4

Você pode fazer algumas coisas diferentes aqui.

  1. Primeiro, usando um armazenamento diferente, como usar o S3, onde você armazena todos os seus arquivos e envia os arquivos mais recentes para lá.

    O S3 é mais parecido com um armazenamento de rede. Você pode enviar seus arquivos para lá e acessá-los de diferentes instâncias.

  2. A segunda opção é usar as ferramentas de linha de comando do EC2, criar uma nova AMI sempre que você alterar os arquivos e usar a nova AMI para iniciar novas instâncias. Nesse caso, você sempre terá os dados mais recentes.

    Assim, quando uma nova Instância é lançada no ElasticBeanStalk, ela usa uma AMI padrão, mas você pode criar uma nova AMI e configurar para usar a nova AMI. Assim, você pode criar scripts que criarão uma nova AMI assim que você concluir as alterações e excluir a antiga e usar essa AMI para iniciar uma nova instância.

  3. A terceira opção é, como dito pelo ceejayoz, você pode usar as instâncias do EC2 em vez do ElasticBeanStalk e personalizá-lo de acordo com suas necessidades.

Eu geralmente prefiro a terceira opção, já que eu quero personalizar as coisas por conta própria, e quero o controle de todo o sistema, software etc. Mas isso é só comigo. Você pode optar por qualquer uma das opções acima.

    
por 07.01.2013 / 19:40
0
Normalmente, é recomendável usar arquivos executáveis, como PHP, em uma instância. Os arquivos estáticos são melhor atendidos em uma Content Delivery Network para máxima velocidade e benefícios de espelho global, neste caso para Amazon Amazon Simple Storage Service (Amazon S3).

Na rede CDN da Amazons, você pode definir o TTL em cada contêiner que você cria. O TTL é basicamente um cache sofisticado que armazena em cache o conteúdo globalmente por X mintues antes de verificar se o arquivo foi renovado ou não.

Para imagens que não são regulares, você precisa que isso tenha um tempo de expiração baixo para que você possa definir o TTL para duas semanas. Enquanto o seu site my active muda diariamente para o arquivo CSS, você pode configurar o TTL para 5mins no container CSS.

As CDNs são ideais para todos os arquivos que não precisam ser executados no servidor - é ótimo para oferecer conteúdo mais rápido e, na verdade, libera recursos no servidor principal, limitando as solicitações.

Como você está familiarizado com o FTP, aconselho strongmente que você dê uma olhada em:

Cyberduck http://www.bybe.net/downloads/try-cyberduck.jpg link

O Cyberduck é absolutamente incrível ao administrar seus Arquivos na nuvem em várias redes, como Amazon, Rackspace, Limelight etc. etc.

Além disso, se você precisar de atualizações regulares em seu servidor para os arquivos PHP, então dê uma olhada no EC2 sugerido pelo GeekRide. Mas não se esqueça de usar o S3 como melhor usá-lo do que não usá-lo.

    
por 07.01.2013 / 20:31