Почему мои тесты redis не так быстры, как поиск хеша из объекта? - PullRequest
1 голос
/ 08 июля 2011

Я думаю, что тест redis будет, по крайней мере, таким же быстрым, как и поиск хеша в объекте.

Объект, ищущий значение из хеша

ruby-1.9.2-p180 :022 > quick(1000) {@p.lookup(:summary_header)}   #=> nil
Rehearsal ------------------------------------
   0.000000   0.010000   0.010000 (  0.006522)
--------------------------- total: 0.010000sec

       user     system      total        real
   0.010000   0.000000   0.010000 (  0.006701)

против простого поиска Redis

ruby-1.9.2-p180 :023 > quick(1000) {r.get("header")}   #=> nil
Rehearsal ------------------------------------
   0.020000   0.020000   0.040000 (  0.088880)
--------------------------- total: 0.040000sec

       user     system      total        real
   0.030000   0.020000   0.050000 (  0.085839)

1 Ответ

5 голосов
/ 08 июля 2011

Redis быстр, но не может быть таким же быстрым, как прямой доступ к памяти.Это требует создания запроса, его публикации, ожидания ответа, декодирования этого ответа и возврата этого значения в ваше приложение.Redis работает как отдельный процесс, поэтому вам придется заплатить эту цену за межпроцессное взаимодействие, даже если оно находится на той же машине.

То, что он всего лишь в двенадцать раз медленнее, чем ваш тест, по-прежнему впечатляет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...