私はWhiteNoiseとZappaを使用しています。zappaでホワイトニングを行い、静的ファイルをs3にプッシュしますか?
ザッパがサイズとしてだろうダウンサイズのプロジェクトを維持するために提案する:
...あなたがする必要がある50メガバイト以上のプロジェクトで実際にアプリケーション機能(source)
のメモリ空間に食べますslim_handler = trueを設定します。これはわずかなパフォーマンスの低下をもたらします。
WhiteNoiseはサーバーに静的ファイルを持ち、Amazon Cloudfrontなどでこれらのファイルにアクセスしてキャッシュすることをアドバイスしています。
ここでキャッシュ22は、作成された圧縮されたWhiteNoise静的ファイルの多くのバージョンが静的なパッケージ> 100MB(私の場合)につながる可能性があるということです。
ここに進む方法はわかりません。オプションは次のとおりです。
- WhiteNoiseの静的コンテンツを手動でS3バケットにプッシュし、Cloudfrontにこれを起点として、Amazonラムダに100MBをアップロードしないでください。
- Zappaに静的コンテンツをS3にバンドルさせてもらうことができますか(アプリから静的コンテンツを削除するかどうかを確認してください)。 ZappaがZipをアップロードするとき、おそらくこれはより迅速なオプションです。
ありがとう。
これは良い質問です。問題の一部は、Djangoがファイルのハッシュバージョンと非ハッシュバージョンの両方をSTATIC_ROOTに保持していることです。 STATICFILES_DIRSに元のファイルがありますので、少なくとも3つのコピーと圧縮されたバージョンがあります。今後のWhiteNoiseリリースでこれを軽減する方法を検討します。 ZappaでZIPコールバックを定義することで、パッケージング後のクリーンアップを行うこともできますが、これについては詳しく調べていません。 –