2017-07-04 2 views
1

私はWhiteNoiseZappaを使用しています。zappaでホワイトニングを行い、静的ファイルをs3にプッシュしますか?

ザッパがサイズとしてだろうダウンサイズのプロジェクトを維持するために提案する:

...あなたがする必要がある50メガバイト以上のプロジェクトで実際にアプリケーション機能(source

のメモリ空間に食べますslim_handler = trueを設定します。これはわずかなパフォーマンスの低下をもたらします。

WhiteNoiseはサーバーに静的ファイルを持ち、Amazon Cloudfrontなどでこれらのファイルにアクセスしてキャッシュすることをアドバイスしています。

ここでキャッシュ22は、作成された圧縮されたWhiteNoise静的ファイルの多くのバージョンが静的なパッケージ> 100MB(私の場合)につながる可能性があるということです。

ここに進む方法はわかりません。オプションは次のとおりです。

  • WhiteNoiseの静的コンテンツを手動でS3バケットにプッシュし、Cloudfrontにこれを起点として、Amazonラムダに100MBをアップロードしないでください。
  • Zappaに静的コンテンツをS3にバンドルさせてもらうことができますか(アプリから静的コンテンツを削除するかどうかを確認してください)。 ZappaがZipをアップロードするとき、おそらくこれはより迅速なオプションです。

ありがとう。

+2

これは良い質問です。問題の一部は、Djangoがファイルのハッシュバージョンと非ハッシュバージョンの両方をSTATIC_ROOTに保持していることです。 STATICFILES_DIRSに元のファイルがありますので、少なくとも3つのコピーと圧縮されたバージョンがあります。今後のWhiteNoiseリリースでこれを軽減する方法を検討します。 ZappaでZIPコールバックを定義することで、パッケージング後のクリーンアップを行うこともできますが、これについては詳しく調べていません。 –

答えて

1

Zappa-django-guideによれば、私はdjango-storage(tutorial setting up with zappa)に移行しました。

私はWhiteNoiseをZappaと連携させることができましたが、私たちのアプリは非常に遅かったです。 django-storageソリューションは奇妙です!

+1

あなたは何かを見つけてうれしいです。あなたはCDNの後ろにWhiteNoiseを運んでいましたか(例えば、クラウドフロントかクラウドフレア)?これは、プロダクション設定に推奨される方法であり、S3のパフォーマンスよりも優れているはずです。 –

+0

whiteNoise経由でラムダの頂上にあるクラウドフロント。私は、適切なキャッシング設定で、Whitenoiseが本当にうまくいくと思う。私はこの権利を得ることに失敗しました(なんらかの理由で、クラウドフロントは常に静的コンテンツのためにラムダに到達していました)。 – andyw

関連する問題