問題タブ [dalli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
734 参照

ruby-on-rails-3.2 - Rails 3.2 アクションキャッシング / 静的ページ

aboutページのような静的コンテンツをキャッシュするためのベストプラクティスは何だろうと思っています。この場合、次のようなマッチャーを使用すると、実際のアクションはありません。

このページ全体をキャッシュできますが、レイアウトにはユーザー セッションに固有のヘッダーが含まれます。したがって、:layout => falseを使用すると、レイアウトだけでなく、アクション内のすべてをキャッシュできるため機能します。

私は使用しました

HomeController では、サーバーが「レンダリング済み」と報告し、一貫して 300 ~ 400 ミリ秒かかるため、実際にキャッシュしているとは確信していません。

このタイプのコンテンツをキャッシュする一般的な方法は何ですか?

0 投票する
1 に答える
230 参照

ruby-on-rails - ページネーションを使用するときにすべてのページのキャッシュをクリアする方法

memcached 付きの dalli gem を使用します。次のコードは、複数のページにわたってページ分割された Foo オブジェクトをキャッシュします。特定のページ (2 または 10 または 15 など) にいるときに Foo(s) をキャッシュできます。しかし、15 ページの Foo (たとえば Foo-150) を変更すると、FooSweeper のメソッドを使用してすべてのオブジェクトのキャッシュがクリアされます。上記のアクションが発生したときに after_save メソッドが呼び出されていますが、すべてのページのキャッシュがクリアされておらず、要求されたページの古い値が反映されています。

以下のコード スニペットに誤りはありますか。

私のコントローラはこのように見えます..

私のスイーパーコードは次のようになります..

0 投票する
1 に答える
1395 参照

heroku - キャッシングしないherokuのダリ

heroku の Rails アプリでアクション キャッシングを有効にしたいと考えています。私はdevelopment.rb設定しました:

ログで見る

-> 本番環境に移行するために、memcache アドオンを 経由$heroku addons:add memcacheでインストールし、新しい gem を Gemfile: にインストールし、gem 'dalli'設定を : に変更しましたproduction.rb:

また、これら 2 つのコメント付きパラメーターを有効にしようとしましたが、とにかくRead/Write fragment ...ログに断片が表示されず、アプリが認証されていることがわかりますが、キャッシュは常に欠落しています

実行$heroku run console中 キャッシュがロードされていることを確認します。

アクションキャッシングが機能しないのはなぜですか?

0 投票する
1 に答える
1695 参照

ruby-on-rails - dalli ストアを使用するように identity_cache gem を構成するにはどうすればよいですか?

dalliで動作するようにidentity_cacheを構成するためのドキュメントが見つかりませんでした。誰かがそれがどのように行われたか教えてもらえますか?

私は自分でこれを試しましたconfig/environments/development.rb(最初に開発環境でこれを試したかったのです):

Rails を起動すると、次のエラーが表示されました。

0 投票する
1 に答える
380 参照

ruby-on-rails - Dalli、memcache を使用する場合の静的アセットのキャッシュ キーは何ですか?

期限切れにしたいいくつかの静的アセットのキャッシュキーがどうなるかを把握しようとしています。

ファイルは私のアプリの /public/file.txt にあります。このためのキャッシュキーは何でしょうか? キャッシュキーを列挙する方法がなく、その特定の資産を期限切れにする方法がわかりません。

キーを列挙する簡単な方法がないこと、そして特定のキャッシュされたオブジェクトをクリアする簡単な方法がないことは信じられないことです。私のサイトは古いアセットを提供しています。これを乗り越える唯一の方法は、キャッシュ全体をクリアすることです。なんて野蛮な。

この大きなフラストレーションの余談: この種のオール オア ナッシングは、Rails でおなじみの永続的な 301 リダイレクト (SSL を使用している場合) を思い出させます。サイトを SSL 経由にする必要があると判断した場合は、サイトが SSL 経由であると永遠に判断したことになります (302 がデフォルトではない理由はわかりません)。

0 投票する
2 に答える
3276 参照

ruby - dalli で memcached を実行すると接続エラーが発生する

Dalli から localhost で実行されている Memcached サーバーに接続できません。Memcached をローカルで実行した経験はありませんが、Dalli と Memcachier Heroku アドオンをしばらく問題なく使用しています。

memcached を homebrew でダウンロードしたところ、問題なくインストールできたようです。私はこのように実行しています:

サーバーに接続してクエリを実行できます

memcached の詳細な出力はすべてのリクエストをログに記録するので、正常に動作していることがわかります。ただし、Dalli では実行できません。私はこのように接続しようとしています:

最後のコマンドを実行した後、ダリは間違いなく吐き出します

...この接続エラーが発生していますが、理由はわかりません。ここに奇妙な部分があります: Memcached はリクエストを受信して​​いますが、接続に成功することはありません。接続しようとするたびに、次の 2 行が詳細出力によって吐き出されます。

それで、ここで何が起こっているのですか?これは認証のことですか?コマンドライン オプションを忘れていませんか?

編集: 何が起こっているのかを理解しました-組み込みバージョンのMemcachedを使用していたことを除いて、私はすべてを正しく行っていました。最新バージョンをインストールし、すべて問題ありませんでした。