Redis は、memcached と同様に、高性能のキーと値のデータベースです。キャッシュ サーバーとは何かについては、Du Niang が非常に明確に説明しているので、ここでは一つ一つ紹介しません。 。
では、私たちは通常どのような状況でキャッシュサーバーを使用するのでしょうか?すべての状況で必要なわけではありません。一般的に、このフィールドをキャッシュ サーバーに置く必要があるのは、フィールドを頻繁に読み取る必要がある場合だけです。また、キーと値のデータベースには非常に単純なデータしか格納されないため、その必要があります。保存するオブジェクトを選択するときは注意してください。
次に、Django で Redis データベースを設定して使用する方法を紹介します。まず、Ubuntu で次のコマンドを実行します。 Django で redis を使用するには、Django プラグインの redis をインストールする必要があります:
pip install django-redis
これはオープンソース プロジェクトであり、github アドレスは https://github.com/niwibe/django-redis です。 , 作者様に感謝です。
これで、Django 設定で構成されました。
CACHES = {
'default': {
'BACKEND': 'redis_cache.cache.RedisCache',
'LOCATION': '127.0.0.1:6379',
"OPTIONS": {
" CLIENT_CLASS": "redis_cache. client.DefaultClient",
},
},
}
REDIS_TIMEOUT=7*24*60*60
CUBES_REDIS_TIMEOUT=60*60
NEVER_REDIS_TIMEOUT=365*24*60*60
実際には、CACHES 内の数値のみが必要な記事 以上です。次の 3 つの文は必要ありませんが、後の例で必要になるので、ここで設定します。
さて、接続と設定が完了したので、プロジェクトでどのように使用するのでしょうか?次の例を見てみましょう。
django.confからインポート設定
django.core.cacheからインポートキャッシュ
#readキャッシュユーザーid
def read_from_cache(self, user_name):
key = 'user_id_of_'+user_name
value =cache.get(key)
if値 == NONE:
データ = なし
それ以外の場合:
データ = json.loads (値)
戻りデータ
#書き込みキャッシュ ユーザー ID
def Write_cache (Self, User_name):
key = 'user_id_of_'+user_name
キャッシュ。 set(key, json.dumps(user_name), settings.NEVER_REDIS_TIMEOUT)
上記の 2 つのメソッドを通じて、必要なフィールドをメソッドにパラメータとして渡すだけで実現できます。
それでは、前に述べた memcached についてはどうでしょうか?実際、これは同じ構成です:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211' ,
}
}
もちろん、使い方は上の私の例と同じです。実際、redis のようなキャッシュ サーバーの場合、構成は非常に簡単で、具体的な使用方法も難しくありません。参考になるように、公式 Web サイトに多くのシンプルで明確な例があります。注意すべき点は 1 つだけです。この種の情報を Redis に保存することは、本当に注意する必要があることです。