4

Django アプリケーションでパッケージのS3Boto3Storageストレージ バックエンドを使用しています。django-storagesバックエンドを使用して、S3 で大量のファイルを処理しています。

ストレージからファイルを読み取るとき、バックエンドはセパレートHEADアンドGETリクエストを作成します。この操作を何度も行っているため、HEAD可能であればリクエストをスキップしたいと考えています。

私の読み取り操作は次のようになります。

class MyModel(models.Model):
    img = FileField()

instance = MyModel.objects.filter().first()
instance.img.read()

デフォルトのpreload_metadataフラグを使用していますFalse

読み取りメソッドのこの動作を制御する別の設定はありますか?

私の推測ではHEAD、ファイルの内容を取得する前に、ファイルが存在するかどうかを要求が確認します。そのため、HEAD呼び出しを try/except ステートメントに置き換えることができます。しかし、私はそれを行う方法を理解できませんでした。

4

1 に答える 1