{
"chats": {
"Main": {
"3": {
"u": "George",
"n": "G",
"f": "1",
"a": "http://example.com/a.png"
},
"4": {
"u": "Lisa",
"n": "L",
"f": "1",
"a": "http://example.com/b.png"
}
}
}
}
私は通常、私はまた、ユーザーにこのデータを送信できるようにする必要がありますNode.jsのこのタイプのネストされたオブジェクトは、どのようにしてレディスに保存できますか?
でオブジェクトでこれを格納します。私がする必要があるだろうかの例は、サインインし、新しいユーザーにチャット内のすべてのユーザーに送信され
だから、単純に次のようになります。users = obj.chats.Main
しかし、私はどのように把握することはできませんデータを取得してそれをオブジェクトに戻してユーザーに送信する方法はもちろん、それを赤字で保存します。
このオブジェクトは、より多くのユーザーがログインするとかなり大きくなります。たとえば、一度に100,000人のユーザーがサインインしているとします。
私は一種のこの作品を作るためにセット内のセットを必要とするが、私はそれは単純なアプローチは、それぞれが各ユーザーのユーザーのRedisのセットを、チャット作ることであろうRedisの
提案していただきありがとうございます。私は個々のフィールドを簡単に変更できる必要があります。しかし、同時に、チャットにサインインしたすべてのユーザーのデータを取得し、サインイン時に新しいユーザーに配信する必要があります(データをオブジェクトにコンパイルする必要があります)。あなたが提案した方法はこれで動作するでしょうか? –
@JDel:私はそれを行う方法を説明する答えを編集しました。しかし、現在のJavascriptオブジェクトで個々のフィールドをどのように編集しますか?すべてのチャットルームをループして、Lisaを探して毎回フィールドを変更しますか?あなたがそれに満足すれば、私は最初の段落で述べたよりシンプルなデザインで同じことをすることができます。 –
オブジェクトを使ってフィールドを編集することは、すべての設定方法のために実際はかなり簡単です。私の状況では、ユーザーがニックネームを変更することを決定した場合、その機能にはユーザーIDと既にサインインしているチャットがあります。 obj.chats [chatName] [userid] .n = "新しいニックネーム"; ' –