問題タブ [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.

0 投票する
9 に答える
38911 参照

c++ - C++ プログラム内で Redis を使用するには?

C++ プログラム内で Redis DB を使用する最良の方法は何でしょうか?

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

c++ - C ++ 3次元のchar配列を使用して渡す方法は?

関数の戻り値を格納するための char 配列を作成しようとしています。次の関数では、データは *****valv** に保存されます。データにアクセスするために extern 変数を作成する方法は?

解決:

みんなありがとう!

0 投票する
3 に答える
2060 参照

database - SQL DB と Key-Value ストア (Redis) をどのように組み合わせるのですか?

コードをレビューしていて、膨大な時間を費やしていることに気付きました

  1. データベースから行を取得し、
  2. XMLとしてフォーマットし、
  3. ブラウザへのAJAX GET、そして
  4. 私のローカルデータストアとしてハッシュされたJavaScriptオブジェクトに変換します。

更新時には、プロセスを逆にする必要があります (XML の代わりに POST を使用する場合を除く)。

Redis を検討し始めたばかりなので、オブジェクトをサーバー上のキーと値のストアに保持し、JSON を使用して JS クライアントに直接転送するだけで、膨大な時間を節約できると考えています。しかし、私の弱い心は、SQL DB を離れることによって何をあきらめるかを予測できません (つまり、GROUP BY/HAVING クエリをあきらめるのが怖いです)。

私のデータについては、次のものがあります。

  • 多対多の関係、つまり obj-tags、obj-groups など。
  • そのような組み合わせによるオブジェクトのクエリ、つまり WHERE タグ IN ('a', 'b','c') AND グループイン ('x','y')
  • 自己結合、つまり各オブジェクトのすべてのタグ WHERE tag='a' (sql group_concat())
  • 多くの外部結合、つまり OUTER JOIN rating ON o.id = rating.obj_id
  • REDIS の強みと思われるフィード

Key-Value と SQL DB をうまく混在させるにはどうすればよいでしょうか?

たとえば、SQL RANGE クエリ (つまり、WHERE obj.id IN (1,4,6,7,8,34,876,9879,567,345, ...)、またはその逆?

アイデア/提案を歓迎します。

0 投票する
3 に答える
2815 参照

database - Key Valueストアのインデックスを使用してデータベーステーブルをシミュレートする最も簡単な方法は何ですか?

Key Valueストアのインデックスを使用してデータベーステーブルをシミュレートする最も簡単な方法は何ですか?Key Valueストアには、範囲指定されたクエリや順序付けされたキーはありません。

シミュレートしたいもの(優先順位順):

  1. テーブルを作成する
  2. 列を追加する
  3. インデックスを作成する
  4. 主キーに基づくクエリ
  5. 任意の列に基づくクエリ
0 投票する
1 に答える
2947 参照

ruby-on-rails - Resque または Gearman - バックグラウンド ジョブに適したツールの選択

書き込み要求の約 50% で、最終的に複数のデータ ストアにデータをプッシュし、それらのデータ ストアに多数のレコードを挿入および更新する Web アプリケーションを開発しています。応答時間を改善するために、このようなリクエストをバックグラウンドで非同期に処理したいと考えています。

私たちの Web アプリケーションは Ruby on Rails で書かれています。

私が傾倒している 2 つのソリューションは、Resque と Gearman です。

Resque: 詳細はこちら: http://github.com/blog/542-introducing-resque Resque は Ruby に非常に適しているようで、特にバックグラウンド ジョブ処理に適しています。「バックグラウンド ジョブは、実行に応答する任意の Ruby クラスまたはモジュールにすることができます。既存のクラスをバックグラウンド ジョブに簡単に変換したり、特に作業を行うための新しいクラスを作成したりできます。」

Gearman: 非同期処理のバックグラウンド ジョブ専用というわけではありませんが、それは間違いなくできることです。どうやらより堅牢なようです。Gearman のもう 1 つの利点は、クライアント コードが Ruby で記述されていても、ワーカー コードが PHP で記述されている可能性があることです。現時点では完全に Ruby on Rails アプリですが、将来、当面の仕事に応じて PHP やその他の何かを使用する可能性があるかどうかはわかりません。

あなたは何をお勧めします?どちらかの経験はありますか?2 つのうちどちらかを選択する際に、実際の制作上のどのような課題に留意する必要がありますか? そして、ここでリンゴとリンゴを比較していますか?

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

ruby-on-rails - resque-schedulerとresque-statusを一緒に使用するにはどうすればよいですか?

Railsアプリでresque-schedulerが正常に動作しています。次に、ステータスを追跡し、キューからジョブを削除できるようにする必要があります。私はresque-statusを簡単に見て、私が見たものから、resque-schedulerでうまく動作させることができれば、それは完璧でしょう。

ただし、rescue-statusはcreateラップenqueueを使用し、resque-schedulerはenqueue_at現在使用している拡張機能を使用しているようです。プラグインをあまりハッキングせずに一緒にプレイする簡単な方法はありますか?誰かがすでにこれを行っており、私にいくつかのヒントを喜んで教えてくれますか?

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

database - redisは耐久性のあるデータストアですか?

「耐久性のある」とは、サーバーがいつでもクラッシュする可能性があることを意味し、ディスクが無傷である限り、データが失われることはありません(ACIDを参照)。それがジャーナリングモードの目的のようですが、ジャーナリングを有効にすると、メモリ内データを操作する目的が損なわれませんか?読み取り操作はジャーナリングの影響を受けない可能性がありますが、ジャーナリングによって書き込みパフォーマンスが低下するようです。

0 投票する
3 に答える
5092 参照

python - Twisted: 遅延コールバックを遅延スレッドに渡すと、スレッドが突然ブロックされるのはなぜですか?

私が取り組んでいるスクレイピープロジェクトで設定しようとしている永続的なメッセージキューに txredis (redis のノンブロッキングツイスト API) を使用しようとして失敗しました。クライアントはブロックしていませんでしたが、リアクター ループ内の 1 つのイベントであったはずのものが数千のステップに分割されたため、本来よりもはるかに遅くなることがわかりました。

その代わりに、redis-py (通常のブロッキング ツイスト API) を利用して、遅延スレッドで呼び出しをラップしてみました。それはうまく機能しますが、さらに高速化するために接続プーリングを設定したいので、redis を呼び出すときに内部遅延を実行したいと考えています。

以下は、私の使用例を説明するために、遅延スレッドのツイスト ドキュメントから取得したサンプル コードの解釈です。

そして、遅延スレッドのコードをブロックする接続プーリングの私の変更は次のとおりです。

私の質問は、なぜ私の変更により遅延スレッドがブロックされるのか、またはより良い解決策を誰かが提案できるのかを知っている人はいますか?

0 投票する
3 に答える
9089 参照

redis - Redis - データサイズをメモリサイズより大きくすることはできますか?

私はRedisにかなり慣れていないので、それを使用する前に、(私にとって)いくつかの重要な詳細を学びたいと思います。そう....

Redis はデータの保存に RAM と HDD を使用しています。RAM は高速の読み取り/書き込みストレージとして使用され、HDD はこのデータを永続化するために使用されます。Redis を起動すると、すべてのデータが HDD から RAM にロードされますか、それとも頻繁にクエリされるデータのみが RAM にロードされますか? HDD に 500Mb の Redis ストレージがあり、Redis 用に 100Mb または RAM しかない場合はどうなりますか? それについてどこで読むことができますか?

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

redis - predis での redis タイムアウト

私は php ( http://github.com/nrk/predis/の predis ) で redis を使用しており、頻繁にタイムアウトが発生しています。スタック トレースは次を示します。

これは一貫して発生し、その理由はわかりません。誰でも何か考えがありますか?