問題タブ [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.
ruby-on-rails - rails-redis で Paperclip を使用する場合の「IOError - closed stream」
Web サイトからいくつかの画像をダウンロードし、これらを Paperclip を使用して S3 バケットにアップロードしています。画像が読み込まれたら、エンティティをデータベースに保存して返します。Rails.cache.fetch
これは、応答をキャッシュするために呼び出しでラップされます。
こんな感じです。
ただし、イメージのダウンロードが開始され、最終的にIOError - closed stream:
次のスタックが得られます。
このエラーが発生する理由と、それを回避する方法を誰か教えてもらえますか?
ruby-on-rails - capistrano でデプロイすると Hiredis が失敗する
ruby 2.2.0とrails 4.2.0でアプリをデプロイしようとすると、 redisサーバーとの対話を担当するgems redis v3.0.1とhiredis v0.4.5タスクが次のエラーで失敗します。
誰も同じ問題に直面しましたか?
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.4
ubuntu + 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を使用しない場合は機能します)。このように構成されています:
トレースあり:
ruby - 値を持つキーのRedis検索
Rubyで値を持つキーをどのように検索しますか? たとえば、値が「somevalue」であるすべてのキーを取得します。
私の鍵は
"xyz" => {:status=> "接続済み", :topic=> "ABC"}
"PQR" => {:status=> "接続済み", :topic=> "ABC"}
ここで、トピックが「ABC」であるすべてのキーを見つける必要があります
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'