私は小さなプロジェクトに取り組んでおり、エンド ユーザーに複数のキャッシュ オプションを提供したいと考えていました。Django では、memcached をデータベースまたはファイル ベースのキャッシュに交換するのは非常に単純であると考えました。私の memcached 実装は、問題なくチャンピオンのように機能します。ページにタイム スタンプを配置しました。curl は、キャッシュを適切に機能させたい場所で一貫して古いタイムスタンプを表示します。しかし、データベース キャッシングに切り替えると、データベースにエントリがまったく取得されず、キャッシングが露骨に機能しません。
ドキュメントで見たところ、必要なのはバックエンドを次のように変更することだけです。
CACHE_BACKEND = 'memcached://localhost:11211'
に:
CACHE_BACKEND = 'db://cache_table'
必要な manage.py (createcachetable) 行を実行した後にテーブルが存在し、問題なく表示できます。私は現在テスト中なので、sqlite3 を使用していますが、私が知る限り、それは問題ではありません。テーブルが完全に空であり、どの時点でも書き込まれていないことを確認できます。また、前に述べたように、タイムスタンプも「間違っている」ため、何かが正しくないというより多くの証拠が得られます。
何かご意見は?現在Ubuntu JauntyマシンでApache経由でサービスを提供しているsqlite3、Django 1.0.2、python 2.6を使用しています。私は単純なものをただ見ているだけだと確信しています。助けてくれてありがとう。