問題タブ [redis]
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 - Ohmを使用してモデル属性を更新することは可能ですか?Redis DBはRubyですか?
MonkとOhm/Redis APIを最初に見て、簡単な質問があります。Ohm / Redisを使用してモデルオブジェクトの属性を更新することは可能ですか?
Ohm APIを使用すると、次のことができます
これを達成する方法についての情報をドキュメントで見つけることができないようです。前もって感謝します!
ruby-on-rails - resque ワーカーを本番環境にデプロイする方法は?
GitHub 関係者は最近、Redis を使用するバックグラウンド処理アプリをリリースしました: http://github.com/defunkt/resque http://github.com/blog/542-introducing-resque
ローカルで動作していますが、本番環境で動作させるのに苦労しています。誰か持っていますか:
- ワーカーをデプロイする Capistrano レシピ (ワーカー数の制御、再起動など)
- メインアプリが実行されている場所からマシンを分離するためにワーカーをデプロイしました。ここではどのような設定が必要でしたか?
- サーバーで再起動しても生き残るためにredisを取得しました(cronに入れてみましたが、うまくいきませんでした)
- resque-web (同社の優れた監視アプリ) をデプロイにどのように取り入れましたか?
ありがとう!
PSこれについてGithubに問題を投稿しましたが、まだ応答がありません。私は展開の経験があまりないので、SOの達人がこれを手伝ってくれることを願っています。ありがとうございました!
ruby - この ruby 構造を redis でモデル化する方法
この種のルビーデータ構造を格納するには、redis ( http://code.google.com/p/redis/ ) を使用することを考えています。
次のように仮定します。
使用するのに適した redis データ型は何ですか?
データを更新する必要があり、node1server1+node1server2 と node2server1+node2server2 の値を並べ替える必要があります。
url - nginx/redis と URL のトラッキング パラメータの処理
Web サイトで nginx と redis を使用しています。私のサイトのいくつかのアイテムについて、トラッキング パラメータを URL に追加して、ユーザーがアイテムをクリックしたときに、ユーザーが要求したコンテンツの提供とは別に、ユーザーの使用状況の統計を収集できるようにしたいと考えています。nginx から redis でこの統計を取得する方法、つまりバックグラウンド アプリケーションにアクセスすることなく方法を探しています。
たとえば、ページにいくつかの行のテーブルがあり、各テーブルが行/列形式でアイテムを保持しているとします。したがって、{table: 2, row: 1, column: 3} のアイテムの場合、実際の URL が www.mysite.com/news/dodi の場合、次の URL を埋め込みたい: www.mysite.com/news /dodi/day=29?table=2&row=1&column=3. ユーザーがそれをクリックすると、nginx は redis をヒットしてコンテンツを取得し、適切な統計を更新します (ここでは、day-29、table-2 などを増分できます)。
バックグラウンドアプリにアクセスせずにこれを達成する方法について何か提案はありますか?
autocomplete - Redis オートコンプリート
redis を使用してオートコンプリートを実装するにはどうすればよいですか?
たとえば、配列があるとし["alfred","joel","jeff","addick"]
ます。入力するa
と取得します["alfred", "addick"]
要点を理解していただければ幸いです。redisコマンドを使用してこれを効率的に実装するにはどうすればよいですか(可能であれば、そうだと思います)。この動作を模倣するために telnet 経由で試すことができるいくつかの簡単なコマンドを取得できれば素晴らしいことです。
ありがとう
PS: 皆さん、メリークリスマス :)
c - Mac OS X Snow Leopard でディスク I/O を実行しているときに、C プログラムが割り込み不可の待機状態でスタックする
背景の 1 行: 私はNoSQL データベースである Redisの開発者です。私が実装している新機能の 1 つは仮想メモリです。これは、Redis がメモリ内のすべてのデータを取得するためです。VM のおかげで、Redis はめったに使用されないオブジェクトをメモリからディスクに転送できます。OS にスワッピングの作業を任せるよりも、これがうまく機能する理由はいくつかあります (redis オブジェクトは、不連続に割り当てられた多くの小さなオブジェクトで構築されています)。 Redis によってディスクにシリアル化されると、それらが存在するメモリ ページと比較して 10 分の 1 のスペースしか必要としません)。
現在、Linux では完全に動作するアルファ版の実装がありますが、Mac OS X Snow Leopard ではうまく動作しません。Redis がメモリからディスクにページを移動しようとしている間、redis プロセスは数分間、中断できない待機状態になることがあります。これをデバッグできませんでしたが、これはfseeko()
またはの呼び出しで発生しますfwrite()
。数分後、呼び出しは最終的に戻り、redis はまったく問題なく動作し続けます: クラッシュはありません。
転送されるデータ量は非常に少なく、256 バイト程度です。したがって、非常に大量の I/O が実行される問題ではありません。
しかし、書き込み操作のターゲットであるスワップ ファイルに関する興味深い詳細があります。fopen()
でファイルを開き、 で拡大して作成した大きなファイル (26 ギガバイト) ですftruncate()
。最後に、unlink()
Redis が参照を取得し続けるようにファイルが編集されますが、Redis プロセスが終了するときに、OS が実際にスワップ ファイルを解放することは確実です。
これですべてですが、詳細についてはここにいます。ところで、Redis git で実際のコードを見つけることもできますが、かなり複雑なシステムであることを考えると、5 分で理解するのは簡単なことではありません。
助けてくれてありがとう。
php - PHP - Redis/Memcachedb/Mongodb またはカウンターを格納するためのその他の永続ストレージ
反対に、それはページビュー、ダウンロード、投票数などである可能性があります。基本的に、それほど「重要な」データではありません。
それらの情報を保存するための「最良の」方法は何ですか? Mysql は適切なオプションではありません。皆さんは何を使っていますか?
memcached - 拡張可能なオブジェクトのキー値ストア
http://www.infoq.com/presentations/newport-evolving-key-value-programming-modelは KV ストアに関するビデオであり、redisがオブジェクトの属性を格納するための列ベースのスタイルを促進するという前提が全体にあります。オブジェクトをシリアル化して単一のキーの下に格納するのではなく、個別のキーの下で。
(この質問はredis 固有のものではありませんが、一般的な KV ストアの一般的なスタイルとベスト プラクティスです。)
たとえば「人」のブロブの代わりに、redis は、オブジェクトの属性が別のキーとして格納される列ベースのスタイルを推奨します。
これがベストプラクティスなのか、人々が異なるアプローチを取るのか、私は興味があります.
たとえば、単一のキーの下でオブジェクトを「ピクル」できます。これには、単一のリクエストで取得または設定できるという利点があります。
または、人は、最初の項目がフィールド名インデックスなどのリストになる可能性がありますか?
これは私に考えさせました-階層的なキーストアが欲しいです、例えば
次に、トランザクションを追加します。
スケーリングの観点から、get と set のバッチ処理が重要になりますか?
これをサポートしている、または他の適用可能なアプローチを持っている主要なストアはありますか?
redis - RedisレプリケーションとRedisシャーディング(クラスター)の違い
- redisレプリケーションとredisシャーディングの違いを知っている人はいますか?
- 彼らは何のために使うのですか?Redisはデータをメモリに保存しますが、これはレプリケーション/シャーディングにどのように影響しますか?
- 両方を一緒に使用することは可能ですか?
redis - Predis シャーディング (コンシステント ハッシュ)
Predis は、クライアント側のシャーディング (キーの一貫したハッシュのサポート) を持っていると主張しています。http://github.com/nrk/predis
プロファイル (ノード) の配列への接続を使用してシャーディングを実行できますが、一貫性のあるハッシュではありません。別のノードをプールに追加すると、一部のキーが見つかりません。誰でもこれについて経験がありますか?
php 5.2 (および redis の php 5.2 バージョン) を使用します。