問題タブ [redis-rails]

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 に答える
880 参照

ruby-on-rails - rails-redis で Paperclip を使用する場合の「IOError - closed stream」

Web サイトからいくつかの画像をダウンロードし、これらを Paperclip を使用して S3 バケットにアップロードしています。画像が読み込まれたら、エンティティをデータベースに保存して返します。Rails.cache.fetchこれは、応答をキャッシュするために呼び出しでラップされます。

こんな感じです。

ただし、イメージのダウンロードが開始され、最終的にIOError - closed stream:次のスタックが得られます。

このエラーが発生する理由と、それを回避する方法を誰か教えてもらえますか?

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

ruby-on-rails - capistrano でデプロイすると Hiredis が失敗する

ruby 2.2.0rails 4.2.0でアプリをデプロイしようとすると、 redisサーバーとの対話を担当するgems redis v3.0.1hiredis v0.4.5タスクが次のエラーで失敗します。

誰も同じ問題に直面しましたか?

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

ruby-on-rails - Vagrant+Ansible+Redis - 異なるサーバーを使用すると 127.0.0.1:6379 (Errno::ECONNREFUSED) を取得する

すべてが順調であることを願っています。私は次の問題を抱えており、あなたが私を助けてくれることを望んでいました:

vagrant と ansible を使用して Rails 4 アプリをデプロイしようとしています。アプリの一部は redis サーバーです。私はこれをセットアップして実行してい192.168.33.2:6379ます。私のレールアプリは192.168.33.4ubuntu + nginxで実行されています。

redis-rb (アプリ内の宝石) を使用して redis をセットアップし、YAML ファイルから開始された app グローバル変数を使用して、初期化子の 1 つで redis オブジェクトを初期化しましたが:

APP_CONFIG[:redis_host] = 192.168.33.2、APP_CONFIG[:redis_port] = 6379 の場合

bind 0.0.0.0私の redis.conf ファイルでは、ブラウザで Rails アプリにアクセスすると、127.0.0.1:6379 (Errno::ECONNREFUSED) で Redis に接続中にエラーが発生します

vagrantredis-cli -h 192.168.33.2 pingが return に ssh 接続されたときに実行され192.168.33.4ますpong。したがって、接続が確立され、redisサーバーにアクセスできます/からのキーを確認できます192.168.33.4...

またnetstat -l、ターミナルで実行すると、次のようになります。tcp 00 *:6379 *:* LISTEN

この問題を解決する方法を知っている人はいますか?

前もって感謝します!

アップデート

注: 私はredis-rails gemを利用し、アプリで session_store と cache_store にも使用しています。(redisを使用しない場合は機能します)。このように構成されています:

トレースあり:

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

ruby - 値を持つキーのRedis検索

Rubyで値を持つキーをどのように検索しますか? たとえば、値が「somevalue」であるすべてのキーを取得します。

私の鍵は

"xyz" => {:status=> "接続済み", :topic=> "ABC"}

"PQR" => {:status=> "接続済み", :topic=> "ABC"}

ここで、トピックが「ABC」であるすべてのキーを見つける必要があります

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

ruby - Redis-As-Rails-Cache (Redis を Rails キャッシュとして使用) Rails 4.1 の接続プールを実装するにはどうすればよいですか?

Redis セットアップに接続プールを追加するにはどうすればよいですか?

何らかの理由で、これに関する情報が見つからないようです。私は次のように設定されたredis(3.2.0)を使用しています:(resque_uriとcache_uriがこのcの前に解析されたと仮定できます)

resque の場合:

初期化シーケンスの後半で、

Rails キャッシュ用に、メモリ、接続制限、エビクション ポリシーが異なる 2 つ目の Redis インスタンスがあります。

UPDATE 2017-02-16@20-17EST: 2 つの redis インスタンスを実行しています。1 つは resque (1.25.2) 用で、もう 1 つは redis-rails (5.0.1) を使用するキャッシュ レイヤー用です。上記の設定例を更新しました。初期化で何かが誤って構成されているか、基本的なセットアップの不一致があると思われます。

更新 2017-02-16@21-37EST:

environments/development.rbもっている

config.cache_store = :redis_store, 'redis://localhost:6379/1/cache_store'