bcompiler + быстродействие

young

Новичок
bcompiler + быстродействие

Насколько быстрее/медленне загрузка файлов при обыкновенном инклуде и через bcompiler

Кстати, он компилирует в какой-то внутренний формат или фнутренний формат PHP?
 

young

Новичок
И еще - с такого вот, закомпиленого варианта, исходники получить можно?!
 

tony2001

TeaM PHPClub
я тут тоже заинтересовался им после твоего вопроса.
насколько я понимаю, исходники получить никак нельзя - на то и расчет.
результат - это байт-код.
насчет быстродействия - думаю, что может и увеличиваться, ведь нет парсинга синтаксиса, но вообще-то надо тестить (см. ниже почему я тестить не буду).
вообще, неплохая вещь, одно только в ней плохо - валится апач в Segmentation fault у меня с ней.
 

young

Новичок
До жтого у меня было все очень непонятно...
То апач не хотел его инклудить...
то он не хотел компилироваться...

Но когда поднял - все ок!
 

tony2001

TeaM PHPClub
хм
рассказывай тогда подробней.
у меня сегфолты на:
ASPLinux 7.2, Apache 1.3.26, PHP 4.3.0-dev от июля где-то.
Подключаю бкомпилер - сегфолты.
Отключаю его - все ок (специально тестил).
Сегодня попробую подебагить подробней...
 

young

Новичок
У меня Linux RedHat
Правда, версия php менее "хакерская" - 4.2.3
 

young

Новичок
Подожди...
тут глюки начались...
У меня проблема при создании экземнляра класса.

То есть, я их нормально собираю, нормально подгружаю бинарник, но при попытке создать класс - у меня все ваоится.
В лог апача ничего не пишется...
 

tony2001

TeaM PHPClub
у меня вчера класс нормально инициализировался.
с этим проблем вроде бы не было.

апач у тебя какой ?
 

tony2001

TeaM PHPClub
напускаешь bcompiler_compile.php из examples какой-нить класс.
у меня отрабатывает, компилит.
потом
PHP:
bcompiler_load('file.with.class.php.phb');

$obj = new OurClass();
print_r($obj);
по каким-то причинам у них в примерах не bcompiler_load(), а bcompile_load(); юзается, а такой функции нет, конечно.
так вот:
код выше нормально грузит и инициирует класс, но вызывает Segmentation fault у Апача - http://bugs.php.net/21160 .
вызов phpinfo(); при подключенном bcompiler тоже вызывает сегфолт.
 

tony2001

TeaM PHPClub
PHP Version 5.0.0-dev

Starting program: /usr/local/apache/bin/httpd -X -f /usr/local/apache/conf/httpd.conf

Program received signal SIGSEGV, Segmentation fault.
#0 0x4017791b in _erealloc (ptr=0x814e254, size=5, allow_failure=0) at /root/CVS/php4/Zend/zend_alloc.c:296
#1 0x40509ccd in apc_create_string () from /usr/local/lib/php/extensions/bcompiler.so
#2 0x4050a163 in apc_deserialize_magic () from /usr/local/lib/php/extensions/bcompiler.so
#3 0x40509180 in zif_bcompiler_load () from /usr/local/lib/php/extensions/bcompiler.so
...
проблема в bcompiler, я пытался ее локализовать - пока не получается =(
 
Сверху