Es scheint nicht so, als ob APC aktualisiert wurde, um mit der Veröffentlichung von PHP 5.4 übereinzustimmen (ich wünschte, sie hätten APC wie ursprünglich geplant in den PHP-Kern aufgenommen).
Ich kann anscheinend keine endgültige Antwort darauf finden, ob der aktuelle APC mit PHP 5.4+ funktioniert. Ich habe es geschafft, Ubuntu-Pakete für PHP 5.4 zu finden, aber PHP-APC-Pakete werden nicht installiert.
php
installation
apc
Greywire
quelle
quelle
Antworten:
Zend OPCache in PHP 5.5 enthalten
Am 21. März 2013 an dem wurde PHP 5.5 Beta 1 mit „Zend OPCache“ veröffentlicht - Es sieht fest , wie dies der Ersatz sein für APC geht nach vorn , wie es in dem PHP - Kern enthalten ist, und wird werden muß für jeden neuen beibehalten Freisetzung.
Ich würde denjenigen, die beim Opcode-Caching auf APC angewiesen sind, persönlich raten, ihren Code mit dem bevorstehenden integrierten Opcode-Cache zu testen und alle aufgetretenen Probleme zu beheben, um eine stabile endgültige Version sicherzustellen.
Ich weiß nicht, was dies für die Zukunft von APC bedeutet.
APC FÜR PHP 5.4+ IST NOCH ALS BETA FLAGGT
Dies bedeutet, dass die Entwickler es nicht als vollständig stabil betrachten . Während viele Leute überhaupt keine Probleme mit den aktuellen SVN-Versionen haben, gibt es immer noch den seltsamen Bericht über Randfälle von Leuten unter bestimmten Konfigurationen oder unter hoher Last.
Wie bei allem , was Sie in einer Produktionsumgebung verwenden möchten würden, stellen Sie sicher , gründlich Sie einen Release - Test (Beta oder stabil) in der Entwicklung oder die Pre-Production - Umgebungen zuerst . Dies beinhaltet Lasttests!
Ab dem Release 3.1.13 haben Commits zum SVN - Repository etwas und das verlangsamt Fehlerliste hat nicht so viele neue Zusätze. Machen Sie daraus, was Sie wollen.
Wer mit C / GDB Fähigkeiten und einige freie Zeit wird aufgefordert , die beschönigen Bugliste und sehen , ob sie alles reparieren kann, oder verbessern das freie Open - Source - Produkt , dass wir alle verlassen sich auf.
Es gibt alternative Lösungen, Wikipedia bietet eine Liste von PHP-Beschleunigern .
Am 13. Februar 2013 gab Zeev Suraski die Verfügbarkeit des Quellcodes Zend Optimizer + bekannt .
Es gab eine ziemlich lange Diskussion über die Integration von Zend Optimizer + in den PHP-Kern in der nächsten Hauptversion (der Version nach 5.5). In diesem Fall möchten sich die Benutzer möglicherweise im Voraus mit Zend Optimizer + vertraut machen.
Verwenden Sie APC 3.1.14 nicht
APC 3.1.14 wurde aufgrund einiger schwerwiegender Speicherprobleme, die entdeckt, aber noch nicht aufgespürt wurden, aus PECL- Downloads entfernt .
Wenn Sie bereits 3.1.14 verwenden, möchten Sie möglicherweise ein Downgrade durchführen, bis 3.1.15 veröffentlicht ist. Denken Sie daran, dies ist noch Beta . Wenn Sie es überhaupt verwenden, verwenden Sie es auf eigenes Risiko.
2013-01-02 :
APC 3.1.14 ist verfügbar undbietet PHP 5.5-Kompatibilität sowie eine Reihe weiterer Fehler .Immer noch Beta
2012-09-03 :
APC 3.1.13 ist verfügbar und behebt eine Reihe von Segfaults .
2012-08-16 :
Ein APC 3.1.12-Tag wurde erstellt, ist jedoch weiterhin als Beta markiert. Es ist auf der APC PECL-Seite sowie im Änderungsprotokoll verfügbar .
Diesmal wurden viele Fehler im Zusammenhang mit bin_dump behoben.
2012-07-19 :
Ein APC 3.1.11-Tag wurde erstellt, ist jedoch weiterhin als Beta markiert. Es ist auf der APC PECL-Seite sowie im Änderungsprotokoll verfügbar . Ich habe die relevanten Mailinglisten verfolgt und sie arbeiten immer noch aktiv an der Behebung von APC-Fehlern. Es handelt sich jedoch um ein komplexes Modul, und nicht viele Leute scheinen der Aufgabe gewachsen zu sein. Diese Version behebt die bösen stat = 0-Fehler beim Einschließen von Dateien.
2012-04-11 : Heute wurde
ein APC 3.1.10-Tag erstellt und eine Beta-Version von 3.1.10 wurde auf der APC PECL-Seite platziert.
Das Änderungsprotokoll lautet:
quelle
Ab PHP 5.4.7 und APC 3.1.13 (und sogar APC SVN-Trunk ab 19.09.2012) ist es zwar "kompatibel", aber auf Servern mit hoher Last nicht stabil, insbesondere wenn Sie PHP- verwenden. FPM und $ GLOBALS. Einige der Entwicklerdiskussionen zu APC befassen sich mit ungelösten Randfällen .
Ich beantworte diese Frage 6 Monate nachdem sie gestellt wurde, weil das Problem immer noch weit verbreitet ist. Wenn ich auf diesen Thread ohne eine Antwort wie meine stoße, habe ich den Sprung zu PHP 5.4 mit APC geschafft und mich verbrannt. Hoffentlich hilft dies den Menschen, Schmerzen zu vermeiden.
quelle
Es scheint, dass der Fehler "möglicherweise" in der letzten Version des Trunks behoben wurde. Ich habe es jetzt mit PHP 5.4.0 zum Laufen gebracht.
svn co http://svn.php.net/repository/pecl/apc/trunk/ apc-trunk
cd apc-trunk
phpize
./konfigurieren
machen
make install
quelle
Nein, APC 1.3.9 (und ab diesem Moment sogar der SVN-Trunk) ist nicht mit PHP 5.4.0 kompatibel. Ich weiß, dass ich nur stundenlang versucht habe, es zum Laufen zu bringen (verschiedene SVN / PHP getestet). INI-Einstellungen / Compiler-Flags / Sie nennen es).
Das ist einfach lächerlich, APC ist eine der beliebtesten PHP-Erweiterungen und man würde erwarten, dass sie nach wochenlangem Durchlaufen von 8 PHP 5.4-RCs die Zeit haben würden, APC dazu zu bringen, nebenher zu arbeiten.
Erbärmlich.
quelle
Nun, ich versuche es in den letzten Tagen und es gibt keine Möglichkeit, einen Opcode-Cacher dazu zu bringen, mit PHP 5.4 zu arbeiten. Xcache wird nicht kompiliert und apc erkennt bestimmte Klassen beim Zwischenspeichern nicht. Ich denke, das ist der Fehler, über den Simon spricht.
Ich habe gehört, dass es einige Korrekturen im Trunk gibt, aber ich habe auch die neuesten Trunk-Quellen ausprobiert, aber die gleichen Fehler treten immer wieder auf. Ich denke, PHP ohne Opcode-Cacher (es gibt derzeit keinen) ist nicht produktionswürdig. Hoffentlich werden die Leute bei apc dies so schnell wie möglich beheben.
AKTUALISIEREN!!!
Xcache 2.0.0-rc1 ist out und kompatibel mit PHP 5.4. Genießen!
quelle
Ich fand apcu http://windows.php.net/downloads/pecl/releases/apcu/
Vielleicht ist dies apc für x64 unter Windows. Es (Version 4.0.1) hat in meiner Anwendung funktioniert.
quelle
Ich verwende AMPPS mit PHP Version 5.5.19. Seit einiger Zeit genau ab der Veröffentlichung von PHP 5.5 wird APC durch Zend OPCache ersetzt, das in PHP 5.5 und höher enthalten ist. Jetzt müssen Sie nur noch Ihre php.ini bearbeiten, um "APC" (derzeit "OPcache") zu aktivieren. Fügen Sie vor dem Abschnitt [XDebug] die fließenden Linien hinzu:
php.ini
Bitte beachten Sie, dass wir zwei Instanzen benötigen :
Eine im Abschnitt [OPcache] und eine im Abschnitt [XDebug]. Xdebug wird in Ihrer xampp / ampps / easyPHP-Serverinstallation häufig nicht standardmäßig bereitgestellt. Möglicherweise befinden Sie sich in einer Situation, in der Sie die Xdebug-Erweiterung herunterladen müssen. Sie können dies einfach tun, indem Sie eine Online-Anwendung verwenden, die den richtigen Xdebug für Ihr PHP definiert. Besuchen Sie http://xdebug.org/wizard.php und folgen Sie den einfachen Anweisungen. Sobald Sie die richtige Version von Xdebug für Ihre PHP-Version heruntergeladen haben, bearbeiten Sie den Link Ihrer zend_extension im Abschnitt [XDebug].
Bitte beachten Sie! dass Sie den OPcache-Abschnitt vor XDebug in Ihre php.ini-Datei einfügen müssen !!! Wenn Sie mir richtig folgen, sollten Sie zwei Instanzen von zend_extension in Ihrer php.ini-Datei haben (eine in OPcache und eine in Xdebug).
Dies funktioniert perfekt für Symfony2 Framework und beseitigt die Empfehlungsmeldung zum Installieren und Aktivieren von APC für Ihr PHP und Xdebug.
Nachricht an diejenigen, die Symfony 2 ausführen und die Warnmeldung aus "web / config.php" entfernt haben, aber dennoch ein Problem haben, wenn sie über die Befehlszeile "php app / check.php" ausgeführt werden. In diesem Fall bedeutet dies, dass Ihre Konsole eine andere php.ini-Datei verwendet. Ändern Sie die System-PATH-Variable - zeigen Sie auf das richtige PHP-Verzeichnis (in dem Sie Ihre php.exe-Datei haben und die von Ihrem lokalen Server verwendet wird).
Wenn Sie eine ausführlichere Erklärung benötigen, lassen Sie es mich im Kommentar unten wissen. Grüße.
quelle
Es scheint einige Probleme zu geben, die noch ausgeräumt werden müssen. Schauen Sie sich die Fehler an und finden Sie möglicherweise heraus, wie Sie Ihr spezielles Problem lösen können.
Ich habe mich vor einigen Stunden mit einem solchen Fehler befasst, und es stellte sich heraus, dass die Verwendung von APC aus dem SVN-Trunk der richtige Weg war. Hoffe das hilft!
quelle
Ich habe festgestellt, dass Sie den Opcode-Cache bei jeder Seitenanforderung löschen müssen, da sonst Klassen, die Schnittstellen implementieren, nicht geladen werden können. Dies wurde aus dem neuesten SVN-Trunk, Apache 2.4.1, PHP 5.4.0, kompiliert.
quelle
APC - nicht empfohlen
Persönlich habe ich APC nicht mit PHP 5.4 oder PHP 5.5 verwendet, aber der neueste stabile APC ist nicht mit PHP 5.4 kompatibel. Der neueste Beta-APC kann mit 5.4 verwendet werden, es wurde jedoch geschrieben, dass immer noch negative Probleme mit APC auftreten.
Wenn Sie PHP 5.5 haben, verwenden Sie
einfach Zend Opcache . Es ist sofort einsatzbereit, daher sind die Probleme minimal.
Wenn Sie PHP 5.4 haben,
empfehle ich XCache . Es ist voll kompatibel mit PHP 5.4 und 5.5. Aktiv entwickelt. Die letzte stabile Version wurde vor 3,5 Monaten (10. Oktober 2013) veröffentlicht. Es verbessert die Leistung, selbst wenn Sie fastcgi verwenden.
quelle
Zend OPCache ist in PHP 5.5 unter dem Namen php_opcache.dll im Verzeichnis php / ext enthalten. Um es zu aktivieren:
quelle
APC hat seit dem 2. Januar eine neue Version: 3.1.14, die einige Fehler behebt: http://pecl.php.net/package/APC
Allerdings habe ich PHP 5.4.x mit APC 3.1.13 aus dem Dotdeb-Repository bisher ohne Probleme ausgeführt, daher würde ich sagen, dass es stabil ist. dotdeb hat mich auch darüber informiert, dass sie den aktualisierten APC in die nächste Version von PHP aufnehmen werden, die voraussichtlich 5.4.11 sein wird.
quelle
Wir experimentieren mit speicherfreien Fehlern (Apache Segfault) mit PHP 5.4.26 und APC 3.1.9. Es gibt einen offenen Fehler für APC unter PHP 5.4.X: https://bugs.php.net/bug.php?id=61934
Ich empfehle, dieses Plugin nicht unter PHP> 5.3 zu verwenden.
quelle
In XAMPP Version 5.6.3 (PHP 5.6.3) müssen Sie in Ihrer ini.php nur Folgendes tun:
Konfiguration für das symfony2-Framework.
quelle