私はMaxMindのGeoIPデータベースにpythonラッパー 'geoip2'を使用しています。ドキュメントを読むと、データベースを開くのは非常に高価なので、データベースリーダーを1つだけ作成しなければならないと言われています。もちろん、リクエストごとに開くことは非常に悪い考えです。MaxMind GeoIP2 Djangoのシングルインスタンス
サーバーにDjango(1.10)+ Gunicornがある場合、データベースリーダーの "シングルトン"をどのように作成する必要がありますか?これは、一般的にgeoip2モジュールに関する質問はありませんが、それはについての質問です:
にはどうすればアプリ(ない プロジェクト全体)からアクセスでき、単一のオブジェクトを作成する必要がありますか?
__init__
:os.environ['APP_VAR_WHATEVER'] = InitObject()
でこれをどうすればよいですか?残念ながら、私はGunicornについてよく分かりませんので、2番目の 質問は、どのくらい労働者が生きていますか? N 分/秒ごとに再起動していますか? が労働者をあまりにも頻繁に呼びかけるのであれば、望ましくない追加の システム負荷が発生することになるので、私はこの質問をしています。