Назад | Перейти на главную страницу

HHVM случайно перестает работать

Фон

Недавно я изменился php5-fpm в пользу hhvm, это действительно то, что они сказали, "холли перформанс гриал"

Я установил hhvm удалите php5-fpm (действительно ли нужен запасной вариант ??), следуя этим инструкциям: https://bjornjohansen.no/hhvm-with-fallback-to-php.

У меня есть несколько веб-сайтов (доменов) внутри этого VPS, и большинство из них - wordpress + nginx + W3TC + Ubuntu 12.0.4p + MariaDB 10ish.

Главная проблема

С момента изменения случайно hhvm внезапно перестает работать. Не знаю, почему, поэтому я решаю следовать последнему шагу руководства, устанавливая ps-watcher и обнаружение, если служба не запущена, и проверка каждые 5 секунд, чтобы перезапустить ее снова.

Конфигурация

hhvm.conf:

location ~ \.(hh|php)$ {
    proxy_intercept_errors on;
    #error_page 502=@fallback;

    try_files $uri =404;

    fastcgi_split_path_info ^(.+\.php)(/.+)$;

    fastcgi_keep_conn on;

    fastcgi_buffer_size 128k;
    fastcgi_buffers 256 16k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;

    include         fastcgi_params;

    fastcgi_index   index.php;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param   SERVER_NAME $host;
    fastcgi_pass    127.0.0.1:9000;
}

# location @fallback {

    #     try_files $uri =404;

    #     fastcgi_split_path_info ^(.+\.php)(/.+)$;

    #     include         fastcgi_params;
    #     fastcgi_index   index.php;
    #     fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    #     fastcgi_param   SERVER_NAME $host;
    #     fastcgi_pass    unix:/var/run/php5-fpm.sock;

# }

/etc/hhvm/server.ini

; php options

pid = /var/run/hhvm/pid

; hhvm specific

;hhvm.server.file_socket = /var/run/hhvm/hhvm.sock
hhvm.server.port = 9000
hhvm.server.type = fastcgi
hhvm.server.default_document = index.php
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc

/etc/hhvm/php.ini

; php options
session.save_handler = files
session.save_path = /var/lib/php5
session.gc_maxlifetime = 1440

; hhvm specific
hhvm.log.level = Warning
hhvm.log.always_log_unhandled_exceptions = true
hhvm.log.runtime_error_reporting_level = 8191
hhvm.mysql.typed_results = false
hhvm.log.header = true
hhvm.log.natives_stack_trace = true

; Customs

max_execution_time = 300
max_input_time = 60
memory_limit = 128M
post_max_size = 12M
upload_max_filesize = 12M

tail /var/log/hhvm/error.log: Принес это предупреждение, которое разработчики W3TC сказали, что в следующем выпуске будет исправлено (это было сказано 2 выпуска назад: P)

[Tue Jan  6 23:27:30 2015] [hphp] [3730:7faf42fff700:1:000006] [] \nWarning: Parameter 1 to W3_Plugin_TotalCache::ob_callback() expected to be a reference, value given in /sites/public/wp-includes/functions.php on line 3269
[Tue Jan  6 23:27:40 2015] [hphp] [3810:7f99bbfff700:1:000001] [] \nWarning: Parameter 1 to W3_Plugin_TotalCache::ob_callback() expected to be a reference, value given in /sites/public/wp-includes/functions.php on line 3269

и куча нескольких проблем Wordpress, связанных с несовместимостью шаблонов.

Любой совет, который мог бы помочь мне обнаружить, что происходит.

Спасибо!

Ну, кажется, причина в том, что hhvmне принимает несколько виртуальных хостов.

https://github.com/facebook/hhvm/issues/885