Ориентированный на многопотоковое исполнение php-pecl-memcache и php-pecl-mongo

'импорт zfs' более или менее просто читает назад конфигурацию Вашего vdevs (от 'zpool.cache') непосредственно. Я предполагаю то, что брало навсегда здесь для окончания, был Ваш удалять транзакцию.

Учитывая, что ZFS является транзакционным, и что Вы удалили 1 000 файловых систем, каждого с 24 снимками, у Вас было очень интенсивное, удаляют с необходимым для проверки ссылочных указателей на 24 000 снимков. Учитывая время поиска тех голов SATA и все древовидные обновления, которые должны были быть сделаны.

1
задан 9 March 2013 в 07:13
1 ответ

Вы не можете просто скопировать модули из / usr / lib64 / php / modules / в / usr / lib64 / php-zts / modules / - ZTS (многопоточная) и не-ZTS сборки PHP имеют разные модули ABI.

Очевидно, пакет php-pecl-memcache для Fedora 18 и даже пакет Rawhide построены без Поддержка ZTS, поэтому они не могут использоваться с mod_php в многопоточном Apache MPM.

У вас есть несколько вариантов:

  1. Согласно рекомендации в PHP FAQ , самый надежный способ использования PHP вместе с многопоточным Apache MPM - это режим FastCGI (например, с php-fpm), так что PHP будет работать в отдельных однопоточных процессах. Таким образом, вы можете использовать все доступные расширения PHP - даже те, которые используют небезопасные библиотеки и вообще не могут работать в многопоточном процессе.

  2. Если вам действительно нужно использовать mod_php с многопоточным MPM, вы можете использовать сторонние пакеты (, подобные этому ), которые построены с поддержкой php-zts (обратите внимание, что / usr / lib64 /php-zts/modules/memcache.so присутствует в списке файлов).

  3. Если вы не можете найти готовый двоичный пакет с поддержкой php-zts для нужного вам расширения PHP, вы можете попробовать перестройте пакет самостоятельно, но даже это может оказаться невозможным, если рассматриваемое расширение не имеет поддержки ZTS в своем коде.

2
ответ дан 3 December 2019 в 21:36

Теги

Похожие вопросы