Pull to refresh

Comments 8

В модуле Redis для Drupal есть один неприятный момент: для очистки по wilcard-у там используется LUA-скрипт, который выполняется на стороне Redis. Так как Redis — однопоточный и блокируемый сервер, то на время такой операции он тупо не отвечает.
С Redis есть подводные камни, но для меня он всё же проще, чем memcached. Один из таких подводных камней — если данных у Вас очень много и они не помещаются в память, то в момент записи их на носитель, так же Redis не отвечает. Но даже при этом, даже на маленьком сайте видно увеличение скорости работы от использование Redis в Drupal.
На маленьком — да.
На большом — разносит в хлам.
Если у Вас есть опыт в этом, поделитесь им пожалуйста. Думаю многие будут благодарны. Основные проблемы с которыми я сталкивался при работе с Redis хорошо описаны в статье: Redis и проблема больших данных (http://habrahabr.ru/company/retailrocket/blog/269151/). Но на маленьком проекте эти проблемы не критичны, а на большом обычно имеется человек который отвечает за производительность, а так же админ который помогает строить систему чтоб её не разносило в хлам и поддерживать работу системы 24 на 7.

Есть ещё довольно интересный вариант использовать Tarantool для хранения кэша. На Drupal Camp Minsk 2014 Игорь Челединов проводил опыт сравнения его в качестве хранилища с другими решениями. Но Tarantool требует большей настройки чем Redis или memcached.
> Каждый раз при построении формы она сохраняется в сегменте {cache_form}

Только если в форме есть ajax элементы
Спасибо за замечание. В изначальном варианте я имел ввиду перестроение формы для каждого нового пользователя с сохранением в сегмент {cache_form}. При использовании в форме ajax элементов или полей с ограничением доступа или отображения она может перестраиваться при каждом открытии для одного и того же пользователя.
> В изначальном варианте я имел ввиду перестроение формы для каждого нового пользователя с сохранением в сегмент {cache_form}

Формы без ajax элементов не сохраняются в cache_form. Эта таблица не для безопасности, а для работы динамических форм на ajax framework.
Из описания таблицы: «Cache table for the form system to store recently built forms and their storage data, to be used in subsequent page requests.». Спасибо за уточнение. На моём тестовом стенде сторонний модуль заставлял особо рьяно эксплуатировать формами {cache_form}.
Sign up to leave a comment.

Articles

Change theme settings