2015-06-06 5 views
0

Я разрабатываю приложение высокой нагрузки и думаю, следует ли использовать таблицу памяти memcache или mysql. Таблица крошечная, не более 30-40 строк, и в большинстве случаев приложение читает их все сразу. (например, выберите * из таблицы и выберете все строки) Может быть, у кого-то есть информация о том, насколько лучше memcache в такой ситуации?Оптимизация: memcached vs mysql memory

+0

Почему бы просто не написать массив, который включен? Нет необходимости в memcache, не нужно подключаться к mysql - ничего не нужно - производительность - это лучшее, что вы получите. Если данные не будут меняться часто, это не будет проблемой. – Fluffeh

+0

Конечно, большинство данных, которые могут быть изменены только мной, я храню в файлах конфигурации. Я говорю о данных, которые меняются пользователями. – Vasya

+0

Вы определили, что выборка всей таблицы из 40 строк является самой медленной частью приложения? Мы говорим миллисекунды. –

ответ

0

Итак, memcached лучше и быстрее! НО: memcached может удалить старые ключи, если истекает срок действия ttl или малый размер для набора других ключей.

Ситуация может быть:

  1. В первом запросе вы установите ключ-значение Memcached.
  2. Во втором запросе (параллельно) вы устанавливаете другое ключевое значение memcached, а в memcached - маленькую память для сохранения этих ключей и memcacehd удаляете старые ключи (наборы в первый запрос).

При сравнении Memcached и MySQL, я бы выбрал MySQL, так как данные не будут удалены в любой ситуации.

P.S. Redis - лучше всего подойти.

+0

На самом деле я не использую memcache, но файлы в ram (я проверял, они работают немного быстрее, а также легко просматривать данные с помощью ftp-клиента, просто написали memcache, как это широко известно), поэтому данные не истекают. – Vasya

Смежные вопросы