2013-10-25 7 views
8

У меня есть сайт Drupal 7 с установленным Memcache, который отлично работает на веб-сервере Apache2. Теперь я заменил Apache2 HHVM (HipHop) и получил реальный импульс производительности.Интеграция с интеграцией HHVM

Проблема в том, что, очевидно, Drupal не может взаимодействовать с сервером Memcache. Вот ошибка:

Notice: Use of undefined constant MEMCACHE_COMPRESSED - assumed 'MEMCACHE_COMPRESSED' in dmemcache_set() (line 44 of /.../modules/memcache/dmemcache.inc). 

и, конечно же, ничего не хранится в Memcache.

Я полагаю, что модуль Memcache от Drupal использует Memcache:set() PECL, который недоступен в этом недавно установленном HHVM. Есть ли какая-либо PECL-подобная установка для HHVM?

Благодаря

+0

Я тоже смотрю на это. Большинство php-приложений требуют, по крайней мере, mysql и memcache, и hhvm, кажется, не хватает расширения memcache. – lethalman

ответ

1

PECL расширения вряд ли будут совместимы с HHVM, но «чистый PHP» реализации могут по-прежнему работать. Это будет медленнее, чем что-то, написанное на C, но преимущество кэширования, вероятно, перевешивает любой недостаток в скорости сырья.

Кто-то уже предположил, что Drupal должен включать чистую реализацию PHP в случае, если расширение Memcache/Memcached недоступно. Предложение включает в себя ссылки на некоторые из альтернатив, так что проверить их:

https://drupal.org/node/1999804

Я взял аа быстрый взгляд на the first link, и, к сожалению, методы и константы не кажутся 100% совместимы с PECL расширение. Но вы можете расширить класс, добавить некоторые отсутствующие константы и изменить порядок аргументов в соответствии с методами расширения PECL.

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