Counter: 1227, today: 1, yesterday: 1
2009-04-04 (土) 11:34:03更新

Contents


Xcache for PHP

このWikiもそうだけど、OpnePNEなどのPHPで動くコンテンツは、ユーザ数が増えてくると重~くなるそうな・・・というわけで、Xchacheを入れてみることにする。例によって、

piano:root {203} % locate xcache
/usr/ports/www/xcache
/usr/ports/www/xcache/Makefile
/usr/ports/www/xcache/distinfo

とのことなので、

piano:root {204} % portinstall www/xcache

すると、

----------------------------------------------------------------------
Libraries have been installed in:
  /usr/ports/www/xcache/work/xcache-1.2.2/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
  - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
    during execution
  - add LIBDIR to the `LD_RUN_PATH' environment variable
    during linking
  - use the `-Wl,--rpath -Wl,LIBDIR' linker flag

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
*****************************************************************************

You have installed the xcache package.

To enable it copy the /usr/local/share/examples/xcache/xcache.ini sample
config file into /usr/local/etc/php/ and modify it to suit your needs.

*****************************************************************************
piano:root {205} % cp /usr/local/share/examples/xcache/xcache.ini /usr/local/etc/php/

/usr/local/etc/php.ini に追加設定が必要か?とおもったけど、

http://piano.smb.net/~openpne/phpinfo

で確認したら、

additional .ini files parsed/usr/local/etc/php/extensions.ini, /usr/local/etc/php/xcache.ini

ということで、/usr/local/etc/php/xcache.ini の設定が反映されてました。

/usr/local/etc/php/extensions.ini の内容を/usr/local/etc/php.ini にも書き込んでいたら、Cron <root@piano> sh /usr/home/openpne/bin/tool_rss_cache.cron /usr/home/openpne/bin/ /usr/local/bin/php が動作したとき、

PHP Warning:  Module 'XCache' already loaded in Unknown on line 0

というエラーが報告されました。これは、

extension = xcache.so

がPHP起動時に二回呼び出されたためのモノのようです。

[xcache-common]
;; install as zend extension (recommended, but not working yet)
; zend_extension = /usr/local/lib/php/20060613-debug/xcache.so
; zend_extension_ts = /usr/local/lib/php/20060613-debug/xcache.so
;; or install as extension
extension = xcache.so

[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = "admin"
; xcache.admin.pass = md5($your_password)
xcache.admin.pass = ""

[xcache]
; ini only settings, all the values here is default unless explained

; select low level shm/allocator scheme implemenation
xcache.shm_scheme =        "mmap"
; to disable: xcache.size=0
; to enable : xcache.size=64M etc (any size > 0) and your system mmap allows
xcache.size  =               64M
; set to cpu count (cat /proc/cpuinfo |grep -c processor)
xcache.count =                 2
; just a hash hints, you can always store count(items) > slots
xcache.slots =                8K
; ttl of the cache item, 0=forever
xcache.ttl   =                 0
; interval of gc scanning expired items, 0=no scan, other values is in seconds
xcache.gc_interval =           0

; same as aboves but for variable cache
xcache.var_size  =            0M
xcache.var_count =             1
xcache.var_slots =            8K
; default ttl
xcache.var_ttl   =             0
xcache.var_maxttl   =          0
xcache.var_gc_interval =     300

xcache.test =                Off
; N/A for /dev/zero
xcache.readonly_protection = Off
; for *nix, xcache.mmap_path is a file path, not directory.
; Use something like "/tmp/xcache" if you want to turn on ReadonlyProtection
; 2 group of php won't share the same /tmp/xcache
; for win32, xcache.mmap_path=anonymous map name, not file path
xcache.mmap_path =    "/dev/zero"


; leave it blank(disabled) or "/tmp/phpcore/"
; make sure it's writable by php (without checking open_basedir)
xcache.coredump_directory =   ""

; per request settings
xcache.cacher =               On
xcache.stat   =               On
xcache.optimizer =           Off

[xcache.coverager]
; per request settings
; enable coverage data collecting for xcache.coveragedump_directory and 
;xcache_coverager_start/stop/get/clean() functions (will hurt executing performance)
xcache.coverager =          Off

; ini only settings
; make sure it's readable (care open_basedir) by coverage viewer script
; requires xcache.coverager=On
xcache.coveragedump_directory = ""

http://www.ecoop.net/memo/2007-06.html


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-04-04 (土) 11:34:03