Pergunta

Recebi um projeto para criar um serviço de armazenamento de arquivos no Google App Engine. Mas estou realmente duvidoso se ele é possível ou não o limite de 30 segundos para processar a resposta e, além disso, o BigTable é apenas um sistema de banco de dados, não um armazenamento servidor .am eu corrigi?

Foi útil?

Solução

Você vai querer olhar para a API da Blobstore

http://code.google.com/appengine/docs/java/blobstore/

Ele permite que você faça upload de arquivos até 50 MB de tamanho e os sirva diretamente, sem passar pelo BigTable. O que estou fazendo é que tenho um script que abre um arquivo, cria o URL do Blobstore Upload e depois publica o arquivo que recebeu para esse URL e armazena uma entrada no BigTable. O limite de 30 segundos se aplica apenas ao tempo de processamento, para que o ato de fazer upload de um arquivo não conta para isso.

Outras dicas

Se tudo que você precisa é de armazenamento, uma escolha melhor do que o App Engine é o recém-beta-d Armazenamento do Google:

O Google Storage for Developers é um serviço RESTful para armazenar e acessar seus dados na infraestrutura do Google. O serviço combina o desempenho e a escalabilidade da nuvem do Google com recursos avançados de segurança e compartilhamento. Os destaques incluem:

Loja de objetos rápida, escalável e altamente disponível

Todos os dados replicados para vários data centers dos EUA

Leia-Your-Your-Writes Consistência de dados

Objetos de centenas de gigabytes em tamanho por solicitação com suporte de gama

Namespace de nome de bucket escondido no domínio

Autenticação e compartilhamento fácil e flexível

Autenticação baseada em chaves

Downloads autenticados de um navegador da web

Controles de acesso no nível individual e em grupo

Use e olhe se você gosta de Blobstore em ação Eu mantenho

Isso é definitivamente possível.

Há também algumas perguntas semelhantes que foram respondidas. Veja o Google para obter mais implementações.

Mas, em geral, sim, o limite de 30 segundos complica sua tarefa, mas você pode dividir seu arquivo em pedaços e armazená -los separadamente como texto/blobs. API remoto do mecanismo de aplicativo Pode fazer isso por você automaticamente.

Tenha em mente que você tem 10 MB por restrição de solicitação.

Dê uma olhada neste projeto para obter alguma inspiração:

http://django-filetransfers.appspot.com/

O SourCecode está disponível se você seguir um link na página.

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