2

プロジェクトでクエリをキャッシュするためにバックエンドで使用django-cachalotする予定です。memcached

EC2 インスタンスを追加または削除することで、スケールアップまたはスケールダウンできる Elastic Beanstalk でこのセットアップを行います。現在memcached、インスタンスで起動すると、このインスタンスの IP がデータベースに追加されます。

私が作成したpylibmc memcachedクライアントは、サーバー IP について時々データベースを読み取り、サーバー IP が変更された場合、または新しい IP が追加された場合に新しいクライアントを作成します。

djangoサーバーをのmemcachedキャッシュ バックエンドに動的に追加するにはどうすればよいですか? memcachedまたは、クライアントdjangoが手動で使用しているように設定するにはどうすればよいですか?

4

1 に答える 1

0

これはおそらく、わずかな利益のために多くの労力を費やしていることになります。django は、定義したさまざまな memcached サーバー間でキャッシュするオブジェクトを分散することに注意してください。したがって、自動スケーリングによって考慮から除外されると、その中のすべてのアイテムが失われます。

デフォルトでは、django は新しい memcached サーバーをリストに動的に追加することをサポートしていません。これを機能させるには、デフォルトのmemcached バックエンドを変更してカスタム キャッシュ バックエンドを作成する必要があります。

于 2015-10-30T10:25:10.933 に答える