Não parece que o APC foi atualizado para coincidir com o lançamento do php 5.4 (gostaria que eles tivessem incluído o APC no núcleo do PHP como planejado originalmente).
Não consigo encontrar uma resposta definitiva para saber se o APC atual funciona com php 5.4+. Consegui encontrar pacotes do Ubuntu para php 5.4, mas os pacotes php-apc não instalam.
php
installation
apc
Greywire
fonte
fonte
Respostas:
Zend OPCache incluído no PHP 5.5
Em 21 de março de 2013, o PHP 5.5 beta 1 foi lançado, incluindo "Zend OPCache" - Parece que este será o substituto do APC, já que está incluído no núcleo do PHP e terá que ser mantido para cada novo liberação.
Eu pessoalmente aconselharia aqueles que dependem do APC para seu cache de opcode a testar seu código com o próximo cache de opcode embutido e fornecer feedback sobre quaisquer problemas encontrados para garantir uma versão final estável.
Não sei o que isso significa para o futuro da APC.
APC PARA PHP 5.4+ AINDA ESTÁ INDICADO COMO BETA
Isso significa que os desenvolvedores não o consideram completamente estável . Embora muitas pessoas não estejam tendo problemas com as versões atuais do SVN, ainda há relatos estranhos de casos extremos de pessoas sob certas configurações ou sob carga pesada.
Assim como com tudo que você deseja usar em um ambiente de produção, certifique-se de testar completamente qualquer versão (beta ou estável) em ambientes de desenvolvimento ou pré-produção primeiro . Isso inclui teste de carga!
A partir do lançamento 3.1.13, os commits para o repositório SVN ficaram um pouco lentos e a lista de bugs não tem muitas adições recentes. Faça disso o que quiser.
Qualquer pessoa com habilidades C / gdb e algum tempo livre deve passar por cima da lista de bugs e ver se eles podem consertar alguma coisa ou melhorar este produto de código aberto gratuito no qual todos nós confiamos.
Existem soluções alternativas, a Wikipedia fornece uma lista de aceleradores de PHP .
Em 13 de fevereiro de 2013, Zeev Suraski anunciou a disponibilidade do código fonte Zend Optimizer + .
Houve uma longa discussão sobre a integração do Zend Optimizer + no núcleo do PHP na próxima versão principal (a versão após 5.5). As pessoas podem querer se familiarizar com o Zend Optimizer + com antecedência, se for o caso.
Não use APC 3.1.14
APC 3.1.14 foi removido dos downloads PECL devido a alguns problemas de memória sérios que foram descobertos, mas ainda não foram rastreados.
Se você já estiver usando o 3.1.14, pode desejar fazer o downgrade até o lançamento do 3.1.15. Lembre-se, isso ainda é beta . Se você o estiver usando, estará usando por sua própria conta e risco.
2013-01-02 :
APC 3.1.14 está disponível, adicionando compatibilidade com PHP 5.5, além de resolver um bom número de outros bugs .Ainda beta
2012-09-03 :
APC 3.1.13 está disponível, corrigindo uma série de segfaults .
16/08/2012 :
Uma tag APC 3.1.12 foi criada, mas ainda está marcada como beta , está disponível na página APC PECL , bem como no changelog .
Muitos bugs relacionados ao bin_dump corrigidos desta vez.
19/07/2012 :
An tag APC 3.1.11 foi criada, mas ainda está marcada como beta , está disponível na página APC PECL , bem como no changelog . Eu tenho seguido as listas de discussão relevantes, e elas ainda estão trabalhando ativamente para consertar bugs da APC, no entanto, é um módulo complexo e poucas pessoas parecem estar à altura da tarefa. Esta versão corrige os bugs stat = 0 desagradáveis ao incluir arquivos.
11/04/2012 :
An tag APC 3.1.10 foi criada hoje, e uma versão beta do 3.1.10 foi colocada na página APC PECL.
O changelog declara:
fonte
A partir do PHP 5.4.7 e APC 3.1.13 (e até mesmo do tronco SVN da APC em 19/09/2012), embora seja "compatível", não é estável em servidores com carga pesada, particularmente se você estiver usando PHP- FPM e $ GLOBALS. Algumas das discussões de desenvolvedores na APC falam sobre casos marginais não resolvidos .
Estou respondendo a essa pergunta 6 meses depois que ela foi feita porque o problema ainda é predominante, e encontrar esse tópico sem uma resposta como a minha foi o que me fez pular para o PHP 5.4 com APC e me queimar. Esperançosamente, isso ajudará as pessoas a evitar um pouco de dor.
fonte
Parece que o bug "pode" ter sido corrigido na última revisão do tronco. Estou funcionando agora com o PHP 5.4.0.
svn co http://svn.php.net/repository/pecl/apc/trunk/ apc-trunk
cd apc-trunk
phpize
./configure
faço
faça a instalação
fonte
Não, APC 1.3.9 (e neste momento, até mesmo o tronco svn) não é compatível com php 5.4.0, eu sei porque acabei de passar horas tentando fazê-lo funcionar (testei vários svn / php. configurações do ini / sinalizadores do compilador / você escolhe).
Isso é simplesmente ridículo, o APC é uma das extensões PHP mais populares e você esperaria que depois de semanas passando por 8 PHP 5.4 RC, eles teriam tempo para fazer o APC trabalhar junto com ele.
Patético.
fonte
Bem, estou tentando nos últimos dias, e não há como fazer um opcode cacher funcionar com o php 5.4. O Xcache não compila e o apc não reconhece certas classes quando armazenadas em cache. Acho que esse é o erro de que Simon está falando.
Ouvi dizer que ocorreram algumas correções no tronco, mas também tentei as fontes de tronco mais recentes, mas os mesmos erros continuam voltando. Eu acho que php sem um opcode cacher (não há nenhum disponível agora) não é digno de produção. Espero que o pessoal da apc conserte isso o mais rápido possível.
ATUALIZAR!!!
Xcache 2.0.0-rc1 foi lançado e é compatível com o php 5.4. Aproveitar!
fonte
Encontrei apcu http://windows.php.net/downloads/pecl/releases/apcu/
Talvez este seja apc para x64 no Windows. Ele (versão 4.0.1) funcionou em meu aplicativo.
fonte
Estou usando AMPPS com PHP versão 5.5.19. Há algum tempo, exatamente a partir do lançamento do PHP 5.5 - o APC foi substituído pelo Zend OPCache que está incluído no PHP 5.5 e superior. Agora tudo o que você precisa fazer para habilitar o "APC" (atualmente "OPcache") é editar o seu php.ini. Antes da seção [XDebug], adicione as linhas fluidas:
php.ini
Observe que precisamos ter duas instâncias de:
Um na seção [OPcache] e um na seção [XDebug]. O Xdebug geralmente não é fornecido como padrão na instalação do servidor xampp / ampps / easyPHP. Você pode se encontrar em uma situação em que precisará baixar a extensão Xdebug. Você pode fazer isso facilmente usando um aplicativo online que define o Xdebug certo para o seu php. Visite http://xdebug.org/wizard.php e siga suas instruções simples. Depois de baixar a versão correta do Xdebug para a sua versão php - edite o link do seu zend_extension na seção [XDebug].
Observe! que você tem que adicionar a seção OPcache antes de XDebug em seu arquivo php.ini !!! Se você me seguir corretamente, deverá ter duas instâncias de zend_extension em seu arquivo php.ini (uma no OPcache e outra na seção Xdebug).
Isso funciona perfeitamente para Symfony2 framework e elimina a mensagem de recomendação para instalar e habilitar o APC para seu PHP e Xdebug.
Mensagem para aqueles que executaram o symfony 2 e removeram a mensagem de aviso de "web / config.php", mas ainda encontram um problema ao executar a partir da linha de comando "php app / check.php". Se isso acontecer, significa que seu console está usando um arquivo php.ini diferente. Mude a variável PATH do sistema - faça com que ela aponte para o diretório php correto (onde você tem o arquivo php.exe e que é usado pelo seu servidor local).
Se você precisar de uma explicação mais detalhada, deixe-me saber no comentário abaixo. Saudações.
fonte
Parece que ainda há alguns problemas a serem resolvidos. Verifique os bugs e você poderá descobrir qual é a solução para seu problema específico.
Eu lidei com um desses erros algumas horas atrás e descobri que usar o APC do tronco SVN era o caminho a percorrer. Espero que isto ajude!
fonte
Descobri que você precisa limpar o cache de opcode em cada solicitação de página, caso contrário, as classes que implementam interfaces falham ao carregar. Este foi compilado a partir do último tronco svn, Apache 2.4.1, PHP 5.4.0.
fonte
APC - não recomendado
Pessoalmente, não usei APC com PHP 5.4 ou PHP 5.5, mas o último APC estável não é compatível com o PHP 5.4, o último beta APC pode ser usado com o 5.4, mas está escrito que ainda tem problemas negativos com o APC.
Se você tem PHP 5.5,
basta usar Zend Opcache . Está pronto para uso, então os problemas são mínimos.
Se você tem PHP 5.4,
eu recomendo o XCache . É totalmente compatível com PHP 5.4 e 5.5. Desenvolvido ativamente. A última versão estável foi lançada há 3,5 meses (10 de outubro de 2013). Ele melhora o desempenho, mesmo se você usar fastcgi.
fonte
Zend OPCache está incluído no PHP 5.5 sob o nome php_opcache.dll no diretório php / ext. Para ativá-lo:
fonte
APC tem uma nova versão: 3.1.14 desde 2 de janeiro, que resolve alguns bugs: http://pecl.php.net/package/APC
No entanto, tenho executado o PHP 5.4.x com APC 3.1.13 do repositório dotdeb sem nenhum problema até agora, então para mim eu diria que é estável. O dotdeb também me informou que incluirá o APC atualizado na próxima versão do PHP, que deve ser 5.4.11.
fonte
Estamos experimentando erros de memória livre (segfault do apache) com PHP 5.4.26 e APC 3.1.9. Há um bug aberto para APC no PHP 5.4.X: https://bugs.php.net/bug.php?id=61934
Eu recomendo não usar este plugin em PHP> 5.3.
fonte
No XAMPP versão 5.6.3 (PHP 5.6.3), tudo o que você precisa fazer em seu ini.php é o seguinte:
Configuração para o framework symfony2.
fonte