2013-10-25 12 views
8

私はMemcacheがインストールされたDrupal 7のWebサイトを持っていますが、これはApache2 Webサーバーで正常に動作しています。今度はApache2をHHVM(HipHop)に置き換え、パフォーマンスを大幅に向上させました。HHVM Memcacheの統合

明らかに、DrupalはMemcacheサーバーと対話できないという問題があります。ここにエラーがあります:

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

もちろん、Memcacheには何も格納されていません。

DrupalのMemcacheモジュールが、この新しくインストールされたHHVMでは利用できないPECLのMemcache:set()を使用しているとします。 HHVMのPECLのようなインストールはありますか?

おかげ

+0

私はそれにも目を向けています。ほとんどのPHPアプリケーションは少なくともmysqlとmemcacheを必要とし、hhvmにはmemcache拡張がないと思われます。 – lethalman

答えて

1

PECL拡張はHHVMと互換性がなさそうですが、「純粋なPHP」の実装はまだ動作することがあります。これはC言語で書かれたものよりも遅くなりますが、キャッシュの利点はおそらく生の速度の不利な点を上回るでしょう。

Memcache/Memcached拡張が利用できない場合に備えて、Drupalに純粋なPHP実装を含めるべきであることは、誰かがすでに示唆しています。

https://drupal.org/node/1999804

私はthe first linkでAA迅速見ていたし、残念ながらメソッドと定数は、PECLと100%互換性があるように思えません:提案は選択肢の一部へのリンクが含まれるため、それらをチェックアウト拡張。しかし、PECL拡張のメソッドに合わせて、クラスを拡張したり、欠落している定数を追加したり、引数の順序を変更することができます。