Чем Redis лучше использование стандартного dict?

Каким бы не был Redis быстр и на Си, но тот факт что вам придется каждый раз конвертировать данные из ЯП в типы Redis, и обратно, и при этом передавать их по локальной сети, это накладно. Быстрее ли просто использовать словарь стандартный в ЯП ?


Ответы (1 шт):

Автор решения: Mike

Да, конечно использование локальной памяти быстрее. Если:

  1. Ваш язык и программа предполагают постоянное наличие одного процесса в памяти, не прекращающего свое выполнение после каждого запроса (как например в php).
  2. У вас именно один процесс на одной физической машине и вам не требуется масштабирование добавлением дополнительных серверов, но использующих тот же кеш.
  3. Если у вас все таки несколько процессов, то либо вы согласны, что каждый хранит разные версии кеша и занимает отдельную память. Либо умеете и готовы использовать сегменты разделяемой памяти (что для многих языков нетривиально и опять же требует сериализации).
  4. Вы сделали эффективно работающими дополнительные полезные фичи вроде автоматического удаления элемнтов по таймауту. Либо такой функционал вам не требуется.
→ Ссылка