Dynamisch konfigurieren PHP für die thread-Sicherheit --enable-maintainer-zts, oder verwenden Sie yum zum installieren von pthreads?
Gibt es eine Möglichkeit zum aktivieren der thread-Sicherheit in PHP-ohne neu zu kompilieren, oder zu verwenden, YUM, dies zu tun?
Bin ich versucht zu installieren, pthreads und es erfordert PHP kompiliert wurden --enable-maintainer-zts
. Allerdings weiß ich nicht mit zu kompilieren, denn ich möchte gerne die Verwaltung meines PHP-stack mit yum. Ich bin derzeit mit dem REMI repo. Ich merke, es ist ein Paket mit php-zts, es ist jedoch nicht ein für meine PHP-version 4.4 und ich kann nicht finden, ein Quell-RPM für php-zts.
Gibt es eine Möglichkeit, die ich nutzen kann yum und enable-thread-safety in PHP, so kann ich installieren pThread von mit
#pecl install channel://pecl.php.net/pthreads-0.0.42
downloading pthreads-0.0.42.tgz ...
Starting to download pthreads-0.0.42.tgz (53,755 bytes)
.............done: 53,755 bytes
33 source files, building
running: phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
building in /var/tmp/pear-build-rootkThpG6/pthreads-0.0.42
running: /var/tmp/pthreads/configure
...
checking whether to enable Threading API... yes, shared
checking checking for ZTS... configure: error: pthreads requires ZTS, please re-compile PHP with ZTS enabled
ERROR: `/var/tmp/pthreads/configure' failed
Wie man sehen kann, schlägt es vor, weil PHP nicht über ZTS aktiviert.
5.4.4 glaube ich ....
Wie zum kompilieren von PHP 5.4 / 5.5 / 5.6 mit pthreads und ZTS aktiviert.
InformationsquelleAutor Dan | 2013-03-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
ZTS Verfügbarkeit bestimmt wird, während der compile-Zeit, also Nein, Sie können nicht dynamisch aktivieren und/oder deaktivieren.
Ist es möglich, dass Sie installieren könnte pThreads über yum oder einem anderen Paket-manager, je nach Distribution, aber beachten Sie, dass "möglich" nicht unbedingt bedeuten, dass es ist eine verfügbare option in Ihrem Fall. Das hängt davon ab, ob Ihre software-repository hat so ein Paket zur Verfügung, mit einer Abhängigkeit, die auf einem anderen PHP-build, hat ZTS aktiviert. Ich bezweifle stark, dass dies der Fall sein würde.
Nein, dass wird nicht funktionieren. Die Symbole nicht überein, wenn Sie das tun.
InformationsquelleAutor Narf
Leider Paketbetreuer von CLI aktivieren Sie nicht die thread-Sicherheit in den meisten unix-Pakete. Manchmal ist es aktiviert, für die worker mpm des apache, aber nicht immer eine vollständige build-Umgebung ( solche, die pecl nicht arbeiten ).
Kurz gesagt, es gibt keine Möglichkeit ZTS zur Laufzeit, ist es ein build-time-option, mit der änderungen an der build einfach nicht möglich, nach der Kompilierung der Quellen.
Allerdings ist es nicht sehr schwer zu installieren Sie eine Kopie für sich selbst.
Den Pfad, den Sie nehmen, hängt wesentlich von Ihren Erfahrungen mit Ihrer Distribution und Ihrer vorgesehenen Nutzung.
Sollten Sie überschreiben möchten Ihre system-installation mit eine thread-sichere version ist, gibt es einige info http://pthreads.org/building
Sollten Sie bauen wollen, eine isolierte installation werden einige Informationen finden Sie auf der Gebäude-Seite an pthreads.org zusätzlich habe ich experimentiert mit RPM ' s, http://github.com/krakjoe/spex enthält ein rpmbuild-Datei, die eine Rolle wird eine Kopie des master-und master-pthreads in /opt/php-pthreads mit dem vollständigen build-Umgebung umfasst und alle Glocken und pfeift, keine apache-Unterstützung in den rpmbuild-version, weil es mehr Komplex und riesig, es umfasst fpm ( ebenfalls unterstützt ).
Du bist die erste person, die ich habe über kommen, konnte ich wirklich empfehlen, verwenden Sie die rpmbuild, auf der Rechnung, Sie können dann halten Sie die DREHZAHL für die anderen VM ' s und nur durch diese gehen müssen einmal (bis zum nächsten update sowieso), der Nachteil ist, es nutzt bleeding-edge-code von PHP, die ist derzeit in der beta...
Hoffentlich bekommt Sie 🙂
http://pthreads.org/building
ist gebrochenVielen Dank für das heads-up, ich werde es wieder auf gh-pages
InformationsquelleAutor Joe Watkins