service de stockage avec le moteur google app
-
21-09-2019 - |
Question
J'ai affecté un projet de création d'un service de stockage de fichiers sur Google App Engine.But Je suis vraiment douteux que ce soit possible ou non compte tenu de la limite de 30 secondes pour traiter la réponse et de plus son l'BigTable est juste un système de base de données pas un .Am serveur de stockage je raison?
La solution
Vous voulez regarder l'API Blobstore
http://code.google.com/appengine/docs/java/blobstore /
Il vous permet de télécharger des fichiers jusqu'à 50 Mo en taille et les servir directement, sans passer par BigTable. Ce que je fais est que j'ai un script qui prend dans un fichier, crée l'URL de téléchargement Blobstore, puis afficher le fichier, il a reçu à cette URL et stocke une entrée dans BigTable. La limite de 30 secondes ne s'applique que pour le temps de traitement de sorte que le fait de télécharger un fichier ne compte pas dans cette direction.
Autres conseils
Si vous avez besoin est le stockage, un meilleur choix que App Engine est la nouvelle beta-d Google stockage :
Google Storage for Developers est un Service de repos pour le stockage et accéder à vos données sur Google Infrastructure. Les moissonneuses-batteuses de service les performances et l'évolutivité de nuage de Google avec sécurité avancée et le partage des capacités. Points forts comprennent:
rapide, évolutive, très magasin d'objets disponibles
Toutes les données répliqué à données multiples U.S. centres
Lire-votre-écrit des données cohérence
Objets de centaines de gigaoctets par demande avec gamme obtenir le soutien
Godet Domaine-scope espace de noms
facile, flexible l'authentification et le partage
par clé authentification
authentifiées téléchargements à partir d'un navigateur Web
et individualisme les contrôles d'accès au niveau du groupe
Ceci est sans aucun doute possible.
Il y a aussi des questions similaires qui ont été a répondu. Voir Google pour plus de mises en œuvre.
Mais en général, oui, 30 secondes limite cela complique votre tâche, mais vous pouvez casser votre fichier en morceaux et de les stocker chaque séparément en tant que texte / blobs. API Remote App Engine pourrait le faire pour vous automatiquement.
Avoir à l'esprit que vous avez 10 Mo par restriction de la demande.
Jetez un oeil à ce projet pour une source d'inspiration:
http://django-filetransfers.appspot.com/
le code source est disponible si vous suivez un lien sur la page.