1

ばかげているように聞こえるかもしれません...
キャッシュに 1,00,000 レコードがあり、キーsomeId
現在、データベースには、主キーが の 1,00,000 レコードがありますsomeId

私の質問は、このシナリオでは何が速くなるのですか?? キャッシュにアクセスするか、句でDBにアクセスしますwhereか??
使用されるキャッシュが EHCache で、DB が MySql であるとします。

4

1 に答える 1

2

キャッシュはローカルで RAM にあり、db はリモートでデータはディスクにあります (ほとんどの場合)。主な違い!

誰もが知っておくべき数値 (スライド #13)を見ると、約 100 ~ 1000ns (キャッシュからデータを読み取る) と 20000 ns (1Gbps ネットワークで 2Kb を送信する) が見られます。したがって、ディスク読み取りを除外しても、違いはすでに約 20 倍です。ディスク読み取り (10 000 000 ns) を考慮すると、差は 10 000 倍になります。

しかし、これらはすべて理論上の計算です。自分で測定する必要があります。

于 2013-03-11T11:40:36.147 に答える