2011-07-29 15 views
1

Redisがメモリに保存されているのに不思議に思いますが、アクセスはまだディスクI/Oと同じ方法で処理する必要がありますか? RedisのでRedisはディスクストレージと同じように扱う必要がありますか?

あなたがもののような...

X = redis.get X 
#do stuff with X 

またはあなたがする必要があるだろうに行うことができます...

redis.get X, (X) -> 
    #do stuff with X 
+2

これは記憶に残っていますが、それは別のプロセスですが、ブロックしないことが最良の方法です。 – generalhenry

+0

generalhenryありがとう、私はあなたに洞察力のための信用を与えることができるように答えを投げたはずです。 – fancy

答えて

4

通信はソケット上で発生します。ソケットはまだI/Oであり、(ほぼ)ノード内のすべてのI/Oは非同期に処理されます。はい、コールバックが必要です。

+0

リチャードに感謝! – fancy

2

他の回答者に加えて、Redisライブラリを使用すると、リモートのRedisホストと接続することができます。この場合、かなりのブロックがあります。 2.0から2.4までのRedisのバージョンはvirtual memoryをサポートしています。つまり、原則としてディスクから読み取ることができます。

関連する問題