2016-07-22 22 views
0

BlobStore APIは「置き換えられた」とマークされており、制限は32MBに制限されています。 Google Cloud Storageはベンダーのロックインです。Google App EngineのBlobをクラウドストレージとBlobStore APIの代わりに扱う方法

例JClouds

そしてのためのGoogle App Engineの(柔軟ではない/管理-VMS)で libの第3部でブロブをアップロードする方法はありますかでしょう1つのバイパスDeadlineExceededExceptionの原因となる60秒要求の制限?

質問を強化するには: セキュリティは問題です。アプリケーションからのすべてのリクエストを実行することが望ましいでしょう。ブロブのアップロードも同様です。これは60秒を問題にする。 個別のuploadUrlはオプションですが、BlobStoreやCloud Storageは使用しませんが、GAEでこれを処理する一般的な方法はありますか?

+0

ベンダーロックイン???ファイルをアップロードするには数行のコードが必要で、いつでも移動することができます。コードを正しく実行すると、AWSまたは別のプロバイダに切り替えるのに1時間かかります。 –

+0

問題の合意されたベンダーロックは簡単かもしれませんが、私は依然として抽象化レイヤーを好むでしょう。 – Krullert

答えて

0

32MBはBlobStoreの制限ではなく、GAEアプリに行くプレーロードをリクエストします。大きなファイルをCloud StorageとBlobStoreの両方にアップロードするには、ユーザーがファイルを送信するための一時URLを作成します。これはapを経由せず、直接ストレージサービスに移動します。 blobstore hereのドキュメントを見つけることができます。私は個人的にCloud Storageを使用していないので、私はドキュメントのリンクを手に入れません。

あなたは確かに同様の方法で他のサービスを使うことができますが、私は "自分のドキュメントを参照してください"と言う以外の方法を説明することはできません。あなたの質問に対する素晴らしい答えではないことは分かっていますが、Googleの製品とどのように連携しているかについての洞察は、サードパーティの使い方を理解するのに役立ちます。

リクエストの制限は60秒ですが、アップロードリクエストがサーバーを通過できないため、これは問題ではありません。 60秒の制限は、アプリに直接行ったリクエストにのみ適用されます。

+0

この答えは正しい方向に向いています。 GCSの署名付きURLサンプルについては、https://github.com/voscausa/appengine-gcs-signed-urlを参照してください。GoogleではXML APIのみを実装しているため、ドキュメントではそれが明白ではありません。 –

関連する問題