redisベース
redisって何?
Remote Dictionary Server(Redis)は、Salvatore Sanfilippoによって書かれたkey-valueストレージシステムです.Redisは、ANSI、C言語を使用したオープンソースの作成、BSDプロトコルの遵守、ネットワークのサポート、メモリベースでも永続化可能なログ型、KeyValueデータベース、および複数の言語のAPIを提供します.
ここではRedisチュートリアルのRedisの説明を引用しています.公式ですが、標準的です.
Redisは、分散ロックとして使用できるなど、豊富な特性を有する.データを永続化できます.メッセージキュー、ランキング、カウンタとして使用できます.publish/subscribe、通知、key期限切れなどもサポートされています.私たちがミドルウェアで実際の問題を解決しようとすると、Redisはいつも自分の役割を果たすことができます.
redisはどうしてこんなに速いのですか.
Redis単機qps(毎秒の同時)は110000回/sに達し、書く速度は81000回/sである.主に4つの側面にまとめられています.のほとんどのリクエストは純粋なメモリ操作であり、非常に高速です. は、多くの検索操作が特に速いデータ構造を用いてデータ記憶(String、List、Hash、set、zset)を行い、Redisにおけるデータ構造は専門的に設計されている.HashMapのように,検索,挿入の時間的複雑さはいずれもO(1) である.は単一スレッドを採用し、不要なコンテキスト切替と競争条件を回避し、マルチプロセスやマルチスレッドによる切替も存在せずCPUを消費し、各種ロックの問題を考慮する必要がなく、ロックの追加、ロックの解除操作は存在せず、デッドロックが発生する可能性があるために導かれる性能消費 はない.非ブロックI/O多重化機構 を用いる.
redisメモリ淘汰メカニズム
redisのメモリ淘汰メカニズムは全部で6つあります. noevictionメモリが不足している場合、新しい書き込み操作は とエラーが発生します. allkeys-lruメモリが不足している場合、キー空間において、最も最近使用されているkeyであるLRU(Least Recently Used) が移動する. allkeys-randomメモリが不足している場合、キー空間からキー をランダムに削除します. volatile-lruメモリが不足すると、有効期限が設定されたキースペースから、最近最も少ないkey を削除する. volatile-randomメモリが不足すると、有効期限が設定されたキースペースからkey をランダムに削除する. volatile-ttlメモリが不足すると、有効期限が設定されたキースペースにおいて、より早い有効期限のkeyが を優先的に除去する.
具体的な配置方法はRedis.confでは構成できます
Remote Dictionary Server(Redis)は、Salvatore Sanfilippoによって書かれたkey-valueストレージシステムです.Redisは、ANSI、C言語を使用したオープンソースの作成、BSDプロトコルの遵守、ネットワークのサポート、メモリベースでも永続化可能なログ型、KeyValueデータベース、および複数の言語のAPIを提供します.
ここではRedisチュートリアルのRedisの説明を引用しています.公式ですが、標準的です.
Redisは、分散ロックとして使用できるなど、豊富な特性を有する.データを永続化できます.メッセージキュー、ランキング、カウンタとして使用できます.publish/subscribe、通知、key期限切れなどもサポートされています.私たちがミドルウェアで実際の問題を解決しようとすると、Redisはいつも自分の役割を果たすことができます.
redisはどうしてこんなに速いのですか.
Redis単機qps(毎秒の同時)は110000回/sに達し、書く速度は81000回/sである.主に4つの側面にまとめられています.
redisメモリ淘汰メカニズム
redisのメモリ淘汰メカニズムは全部で6つあります.
具体的な配置方法はRedis.confでは構成できます
# maxmemory-policy allkeys-lru