0

さまざまなメトリックのデータポイントについて opentsdb サーバー (バックエンドで Hbase クラスターを使用) にクエリを実行し、dygraph javascript グラフ作成ライブラリを使用して、それらのメトリックをプロットしている Web アプリケーションがあります。過去 1 日のすべてのデータポイントを特定のメトリクスについて opentsdb から取得するのに 2 秒近くかかるため、25 近くのメトリクスをプロットしている私のアプリケーションは非常に遅くなります。

この待ち時間を短縮するために、php5 の memcached モジュールを使用してすべてのクエリをキャッシュすることを考えています。しかし、memcached に関していくつか質問があります。

  • 特定の時間間隔の後にいくつかのコマンドラインクエリを実行することにより、バックグラウンドでキャッシュを更新し続けるように memcache を構成する方法はありますか?

  • 私のアプリケーションは過去1日のデータポイントをプロットするだけなので、最初にキャッシュを更新するのではなく、常にキャッシュを使用してクエリに応答するようにmemcacheを構成する方法はありますか? いくつかのデータポイントを見逃すことはそれほど重要ではありません。

この待ち時間を短縮する方法が他にある場合は、私に提案してください。

4

1 に答える 1

2

どちらも memcached の仕事ではありません。アプリケーションはバックグラウンドでキャッシュを更新する必要があり (cron を実行して)、キャッシュの有効期限が切れるように (12 時間とします) 設定できますが、時間を確認し (キャッシュに保存する必要があります)、2 時間未満の場合はバックグラウンド プロセスを実行してキャッシュを更新する

于 2012-12-15T14:47:48.240 に答える