問題タブ [node-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.
node.js - Node Redis get()を同期化する
ノードでredisの実装を始めたところです。認証方法の実装中に、トークンがredisに存在するかどうかを確認する必要があります。存在しない場合は、redisとmongo dbで新しいトークンを更新する必要があります。そのために、大きなコールバックブロックを記述し、結果が正しく取得されないようにする必要があります。どうすればredisにコールバックの赤を取得させることができますか。どうすれば同期させることができますか。サンプルコードは以下のとおりです。
node.js - Node & Redis: リストで 46 を超えるレコードを取得できません
何週間も解決できない問題があります。
Heroku では Node.js、Redis サーバーには openredis、Node Redis クライアントには「node-redis」を使用しています。
私たちのモバイル アプリ プロジェクトには、'user_list' という名前の redis リストがあり、そこには redis db #1 (リストは db #1 にあります) のキーも含まれています。最初に user_list から ID を取得し、後でリスト内の各 ID に対して「get」リクエストを行うことで、地図上にユーザーの位置を表示します。
ただし、「smembers user_list」を作成しようとすると、user_list の要素全体を取得できないという問題があります。46 個のレコードの後、「,,,,,,,,」のように返されます
文字通りすべてを試してみましたが、リスト内の要素を徐々に増やしていくと機能しますが、100 個の要素を配置すると、単に取得できなくなります
何が問題なのですか?
node.js - node_redis のパラメータを理解するには?
全て
私は node_redis を勉強しています、examples/simple.js で、次のコードがあります:
私は混乱しています:
3 行目に 2 つのパラメーター "(err, reply)" があるのはなぜですか。デザイナーはいくつのパラメーターを定義しますか?
または、それらを理解するためにどの本または他のものを読むべきかを教えてくれませんか? 前もって感謝します!
よろしくお願いします
PengCZ
data-structures - ノード dbase 構造の Redis
いくつかの値を保存する必要があります。最初は、{postid,text,room_name} のような投稿データです。ここで、postid は自動的にインクリメントされます。いくつかの投稿を収集した後、それらをユーザー名に入れる必要があるため、次のようになります。
ハッシュを使用する必要があると思いますが、ハッシュをそれらのユーザー名にプッシュする方法がわかりません。私がすることは:
node-redis - パイプラインを使用した node_redis 認証
次のコードで、node_redis の他のコマンドで AUTH をパイプライン処理できる状況はありますか?
この関数は、ノード サーバーがリクエストを受け入れるたびに呼び出されます。コールバック関数では、get/set などの他の redis コマンドが発行されています。
node_redisを使用して認証をredisサーバーに送信する正しい方法は何ですか?
javascript - TypeError は Redis メッセージ イベントでスローされません
イベントシステムを実装しようとしています。
ノードが Redis チャネルにサブスクライブし、メッセージを受信して、オブジェクトに存在しないメソッドを呼び出します。
完全なコードはこちらです。単純。
http://pastebin.com/8XnbaepE
エラーがスローされないのはなぜですか?
この振る舞いがわかりません。
別の奇妙な問題は、最初にメッセージをチャネルにパブリッシュした後、別のチャネルとペイロードが渡されたときに、関数の引数が古いものになることです。
私は何が欠けていますか?
node.js - AWS EC2 での pubsub とキャッシュの Redis 構成
私は EC2 で Redis を使用しています。私の質問は、唯一の目的が pubsub とキャッシュである redis インスタンスの理想的な構成は何でしょうか?
明らかに、何も保持していないため、ディスクへの保存をオフにすることができますが、メモリの多い小さなディスクが理想的でしょうか?
10 万人のユーザーが一度に自分の pubsub チャンネルに登録したとします。EC2 インスタンスに続く EC2 インスタンスで十分でしょうか:
Redis で pubsub のメモリ フットプリントを何をどのように測定するのかがわからないため、見積もりに苦労しています。
session - redis、express、および socket.io を使用してセッションを機能させるにはどうすればよいですか?
したがって、sessions を socket.on('connection', ...) 内で機能させようとしています。最近のバージョンを使用してこれを機能させようとしています: Socket.io - 0.9.13、Express - 3.1.0 および最新バージョン他のモジュールの。
とにかく、「connect-redis」と「session.socket.io」の両方のモジュールを使用してみましたが、どちらも同様の問題を抱えています。
私のコードには 2 つの redis ストア (socketio.RedisStore と require('connect-redis')(express)) があり、このプログラムはすべて正常に実行されるようになりましたが、express と socket.io はセッション データを共有する必要があるため、このセットアップはセッションを正しく使用しますか? セッション ストアは Express/socketio と同じオブジェクトである必要がありますか? 2 つの RedisStore がバックグラウンドで同じデータベースを使用するため、私には少し灰色の領域ですか?
両方の場所で socket.io redisStore または connect-redis redisStore を使用してみましたが、socket.io は connect-redis redisStore が好きではなく、express は socketio.redisStore が好きではありません。
connect-redis RedisStore を使用すると、socket.io/lib/manager.js が文句を言います: this.store.subscribe(... TypeError Object # has no method 'subscribe'
socketio.RedisStore を使用すると、express/node_modules/connect/lib/middleware/session.js が文句を言います: TypeError: Object # has no method 'get'
* 注: session.socket.io プラグインを動作させたいのですが、そのプラグインで同じセットアップを行うと、(また) 表現すると、「TypeError: Object # has no method 'get'」というエラーが表示されます。
セッションに2つの異なるRedisStoreを使用しても問題ありませんか、それともどちらか一方を両方で機能させる必要がありますか?もしそうなら、修正方法に関するアイデアはありますか?
私の現在のコードは次のようになります。
node.js - Node_redis - how to remove a key?
Is there any way to remove/delete an entry by key, using Node_redis? I can't see any such option from the docs..
node.js - Node.jsとRedisでパブリッシュ/サブスクライブする
小さなNodeアプリでRedispub/subを動作させようとしています。現在、node-redisを使用していますが、pub/subのAPIを理解していません。名前でチャンネルを購読できるようですが、次のように、一般的な「メッセージ」イベントですべてのチャンネルのすべてのメッセージを受信します。
これにより、サブスクリプションごとに新しいクライアントを作成するか、次のようなものを使用する必要があります。
次に、適切なsocket.ioチャネルクライアント側をリッスンします。どちらも私にとって理想的ではありません。
サブスクライブ時にコールバックを登録したいので、次の擬似コードスニペットのように、そのチャネルのメッセージのみを受信します。
誰かが私の問題のクリーンな解決策、または私の願いをサポートする別のredis APIを知っていますか?