암용으로 크로스컴파일 하려는데
이래저래 부딛히는 dog show!!
php 컴파일시 configure 파일에서 dlopen 으로 검색후
found=yes로 하여 강제로 dlopen(extension 사용 가능하도록) 수정해야 한다.
if-else 그리고 fi를 주석처리
xcache 컴파일
xcache의 환경설정
lighttpd 에서 cgi.assign 부분에 php를 주석처리 하지 않으면
php-cgi 가 fpm을 통해 데몬으로 구동되어도 cgi가 먼저 처리 하면서 캐싱이 되지 않는다.
(cgi가 fastcgi보다 위에 있어서 그럴지도?)
ab 로 벤치마크 결과 50% 정도 향상.. 이려나?
-----
--enable-fpm을 추가하지 않아도 되긴 되는 듯?
이래저래 부딛히는 dog show!!
php 컴파일시 configure 파일에서 dlopen 으로 검색후
found=yes로 하여 강제로 dlopen(extension 사용 가능하도록) 수정해야 한다.
php 컴파일
$ rm config.cache
$ ./configure --host=arm-none-linux-gnueabi --disable-all --with-config-file-path=/etc --enable-simplexml --enable-cgi --enable-fpm
|
if-else 그리고 fi를 주석처리
$ vi configure
65281 line
flock_type=unknown
if test "$cross_compiling" = yes; then :
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
See \`config.log' for more details" "$LINENO" 5; }
else
65323 line
if test "$cross_compiling" = yes; then :
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
See \`config.log' for more details" "$LINENO" 5; }
else
|
xcache 컴파일
$ CC=arm-none-linux-gnueabi-gcc ./configure --host=arm-none-linux-gnueabi --enable-xcache --enable-xcache-optimizer |
$ vi /etc/php.ini # 주석처리 되어있으니 주석만 삭제하면 될 듯
cgi.fix_pathinfo=1
# 이상한(?) 경로이니 옮겨서 사용하려면 주석삭제 및 수정 필요 extension_dir = "/usr/lib" # 가장 아래 추가하면 됨
extension=xcache.so
[xcache.admin]
xcache.admin.enable_auth = Off
[xcache]
xcache.shm_scheme = "mmap"
xcache.size = 1M
xcache.count = 1
xcache.slots = 8K
xcache.ttl = 0
xcache.gc_interval = 0
xcache.var_size = 1M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Off
xcache.readonly_protection = Off
xcache.mmap_path = "/dev/zero"
xcache.coredump_directory = ""
xcache.cacher = On
xcache.stat = Off
xcache.optimizer = Off
[xcache.coverager]
xcache.coverager = Off
xcache.coveragedump_directory = "" |
$ vi /etc/lighttpd/lighttpd.conf
cgi.assign = ( ".pl" => "/usr/bin/perl",
".html" => "/usr/bin/php",
# ".php" => "/bin/php-cgi",
".cgi" => "" )
fastcgi.server = ( ".php" => ((
"bin-path" => "/bin/php-cgi",
"socket" => "/tmp/php.sock",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "1",
"PHP_FCGI_MAX_REQUESTS" => "100"),
"bin-copy-environment" => (
"PAHT", "SHELL", "USER" ),
"broken-scriptfilename" => "enable"
))
)
|
lighttpd 에서 cgi.assign 부분에 php를 주석처리 하지 않으면
php-cgi 가 fpm을 통해 데몬으로 구동되어도 cgi가 먼저 처리 하면서 캐싱이 되지 않는다.
(cgi가 fastcgi보다 위에 있어서 그럴지도?)
ab 로 벤치마크 결과 50% 정도 향상.. 이려나?
+xcache enable
Time taken for tests: 570.448 seconds
Requests per second: 1.75 [#/sec] (mean)
Time per request: 570.448 [ms] (mean)
Time per request: 570.448 [ms] (mean, across all concurrent requests)
Transfer rate: 38.86 [Kbytes/sec] received
+xcache disable
Time taken for tests: 916.042 seconds
Requests per second: 1.09 [#/sec] (mean)
Time per request: 916.042 [ms] (mean)
Time per request: 916.042 [ms] (mean, across all concurrent requests)
Transfer rate: 24.20 [Kbytes/sec] received -----
--enable-fpm을 추가하지 않아도 되긴 되는 듯?
'Programming > php' 카테고리의 다른 글
php simpleXML saveXML 정렬하기 (well-formed XML) (0) | 2014.12.23 |
---|---|
php simpleXML (0) | 2014.12.22 |
lighttpd + php 퍼미션 문제 (0) | 2014.10.21 |
php.ini extension_dir (0) | 2014.10.20 |
php 5.3.22 / xcache 1.3.2 (0) | 2014.10.15 |