2

xcacheをzendフレームワークで使用して、Zend_Db_Table_Abstractからメタデータをキャッシュし、describeクエリがテーブルごとに1回だけ呼び出されるようにしようとしています。xcacheをブートストラップに実装してアプリケーションを実行すると、次のエラーが表示されます。

Warning: xcache_get() [function.xcache-get]: xcache.var_size is either 0 or too small to enable var data caching in /home/randall/htdocs/lib/Zend/Cache/Backend/Xcache.php on line 95.

php.iniの設定を調整しました。

; XCACHE
 626 [xcache-common]
 627 zend_extension=/usr/lib/php5/20060613/xcache.so
 628 
 629 [xcache-admin]
 630 xcache.admin.enable_auth = On
 631 xcache.admin.user = "user"
 632 xcache.admin.password = "********"
 633 
 634 [xcache]
 635 xcache.shm.scheme = "mmap"
 636 xcache.size = 128M
 637 xcache.count = 4
 638 xcache.slots = 8K
 639 xcache.ttl = 0
 640 xcache.gc_interval = 0
 641 
 642 xcache.var_size = 64M
 643 xcache.var_count = 1
 644 xcache.var_slots = 8K
 645 xcache.var_ttl = 0
 646 xcache.var_maxttl = 0
 647 xcache.var_gc_interval = 300
 648 xcache.test = Off
 649 
 650 xcache.readonly_protection = Off
 651 xcache.mmap_path = "/tmp/xcache"
 652 xcache.coredump_directory = ""
 653 
 654 xcache.cacher = On
 655 xcache.stat = On
 656 xcache.optimizer = Off
 657 
 658 [xcache-coverager]
 659 xcache.coverager = On
 660 xcache.coveragedump_directory = ""

ただし、xcache.var_sizeパラメーターを何に設定しても、引き続きエラーが発生します。これは、xcache1.2.2および1.3.0で発生します。どんな助けでもいただければ幸いです。

4

2 に答える 2

1

を実行しphpinfo()、それらの設定が正確であるかどうかを確認し、正しいphp.iniがロードされていることを確認します。また、mmap_pathを「/ dev / zero」に設定してみてください(とにかく有効にしていないreadonly_protectionを無効にするだけです)...

于 2010-06-04T18:50:57.653 に答える
0

Doctrine CLI コマンドでこの問題が発生しました。var_size または mmap_path を変更しても効果はありませんでした。エラーをなくすために、php.ini から Xcache へのすべての参照を削除/コメントアウトしました。コマンドと Web アプリケーションはその後も機能しましたが、エラーはなくなりました。

于 2014-05-23T13:29:00.633 に答える