Instale e configure o OPcache para desempenho de PHP no CentOS 7

Uma das linguagens de programação mais utilizadas hoje por milhões de usuários é o PHP, que é útil e prático para o desenvolvimento de aplicativos e pode ser encontrado em todos os servidores de hospedagem disponíveis hoje.

Uma das vantagens de usar o PHP são suas ótimas opções de usar várias extensões em sua distribuição padrão; com o qual os usos do PHP para o desenvolvimento das aplicações são expandidos de forma faseada. Uma dessas extensões é o OPcache, que ajuda a melhorar o desempenho geral do PHP.

É por esta razão que hoje e através deste estudo, Solvetic irá explicar como instalar e configurar o OPcache no CentOS 7 para ser ainda mais produtivo com o PHP.

O que é OPcache?O OPcache foi desenvolvido buscando melhorar o desempenho do PHP armazenando o código de byte de um script pré-compilado em memória compartilhada, eliminando assim a necessidade da própria linguagem PHP carregar e analisar os scripts em cada solicitação, o que é traduzido finalmente em melhor desempenho .

OPcache está incluído no PHP versão 5.5.0 e posterior e está disponível por meio do PECL para PHP versões 5.2, 5.3 e 5.4.

Nenhuma biblioteca externa é necessária para compilar esta extensão PHP, então ela está disponível para todas as distribuições onde o PHP é executado sem problemas.

1. Como instalar o OPcache no CentOS 7 Linux

Passo 1
Primeiro, vamos instalar o repositório EPEL e depois o repositório REMI usando os seguintes comandos:

 yum install epel-release yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Inserimos a letra s para confirmar o download e a instalação.

PROLONGAR

Passo 2
Mais tarde, devemos aceitar as chaves GPG correspondentes:

PROLONGAR

etapa 3
O próximo passo é instalar o yum-utils, que é uma coleção de utilitários para estender as funções padrão do yum, graças a eles, será possível gerenciar repositórios yum, bem como pacotes sem configuração manual e muitas outras tarefas, para sua instalação, executamos o seguinte:

 yum install yum-utils

PROLONGAR

Passo 4
Posteriormente devemos confirmar o download e instalação dos pacotes:

PROLONGAR

Etapa 5
Agora, quando o yum-utils foi instalado, devemos usar o yum-config-manager para habilitar o repositório Remi como o repositório padrão para instalar diferentes versões e módulos do PHP, executamos o seguinte com base na versão desejada:

Para PHP 5.5

 yum-config-manager --enable remi-php55

Para PHP 5.6

 yum-config-manager --enable remi-php56

Para PHP 7.0

 yum-config-manager --enable remi-php70

Para PHP 7.1

 yum-config-manager --enable remi-php71

Para PHP 7.2

 yum-config-manager --enable remi-php72 

PROLONGAR

Etapa 6
Por fim, procedemos à instalação da extensão OPcache e verificamos a versão do PHP para confirmar que possuímos a extensão OPcache instalada, para isso utilizamos os seguintes comandos. Aceitamos o download e instalação do OPcache.

 yum install php-opcache

PROLONGAR

Etapa 7
Verificamos a versão do PHP e se possui OPcache. Observe o resultado final com Zend OPcache v7.0.5, isso indica que o Opcache está instalado corretamente no CentOS 7.

PROLONGAR

2. Como configurar a extensão Opcache no CentOS 7 Linux


Passo 1
A última etapa é configurar o OPcache editando o arquivo /etc/php.d/10-opcache.ini ou /etc/php.d/opcache.ini (conforme o caso) com nosso editor desejado:
 nano /etc/php.d/opcache.ini
Lá podemos aplicar os seguintes valores para obter um melhor desempenho do PHP:
 opcache.enable_cli = 1 opcache.memory_consumption = 128 opcache.interned_strings_buffer = 8 opcache.max_accelerated_files = 4000 opcache.revalidate_freq = 60 opcache.fast_shutdown = 1

PROLONGAR

Salvamos as alterações usando as seguintes chaves:

Ctrl + O

Saímos do editor usando as seguintes teclas:

Ctrl + X

Passo 2
Prosseguimos para reiniciar o servidor da web executando uma das seguintes linhas:

 systemctl restart nginx OU systemctl restart httpd
No arquivo opcache.ini existem as seguintes variáveis ​​com seus respectivos usos:

Esta opção ativa o cache de opcode. Quando desativado, o código não é otimizado ou armazenado em cache

 opcache.enable boolean

Esta opção ativa o cache de opcode para a versão CLI do PHP

 opcache.enable_cli boolean

Gerencia o tamanho do armazenamento de memória compartilhada usado pelo OPcache, em megabytes

 opcache.memory_consumption integer

Sua função é gerenciar a quantidade de memória usada para armazenar strings, em megabytes.

 opcache.interned_strings_buffer integer

Sua tarefa é gerenciar o número máximo de chaves na tabela hash OPcache, seu valor mínimo é 200 e seu valor máximo é 100000 em PHP <5.5.6 e 1000000 em versões posteriores.

 opcache.max_accelerated_files integer

Refere-se à porcentagem máxima de memória desperdiçada permitida antes que uma reinicialização seja agendada na extensão.

 opcache.max_wasted_percentage integer

Ativá-lo permite que o OPcache adicione o diretório de trabalho atual à chave do script, eliminando assim possíveis colisões entre arquivos com o mesmo nome de base.

 opcache.use_cwd boolean 

Com ele ativado, o OPcache consultará os scripts atualizados a cada opcache.revalidate_freq segundos.

 opcache.validate_timestamps boolean

Mede a frequência de verificação de timestamps Unix de scripts baseados em atualização, em segundos opcache.revalidate_path boolean: quando desabilitado, os arquivos em cache existentes que usam o mesmo include_path serão reutilizados pelo OPcache.

 opcache.revalidate_freq integer

Quando desativado, todos os comentários da documentação serão removidos do cache do opcode para reduzir o tamanho do código otimizado.

 opcache.save_comments boolean

Com sua ativação, uma sequência de desligamento rápido é criada, a qual é usada de forma que não libere cada bloco alocado, mas depende do gerenciador de memória Zend Engine para otimizar o desligamento do PHP.

 opcache.fast_shutdown boolean

É um bitmask que controla quais permissões de otimização são executadas pelo OPcache

 opcache.optimization_level integer

É um hack que deve ser habilitado para funcionar apenas para evitar erros "Não é possível redeclarar a classe

 opcache.dups_fix boolean

Indica o tamanho máximo do arquivo que será armazenado em cache, em bytes

 opcache.max_file_size integer

Refere-se à quantidade de tempo de espera pelo início de uma reinicialização agendada se o cache não estiver ativo, em segundos

 opcache.force_restart_timeout integer

Os logs de erro do OPcache são armazenados lá

 string opcache.error_log

É o modelo de memória principal que o OPcache usará

 string opcache.preferred_memory_model

Sua tarefa é proteger a memória compartilhada de gravações inesperadas durante a execução de scripts

 opcache.protect_memory boolean

Sua função é chamar funções da API OPcache apenas a partir de scripts PHP cujo caminho começa com a string especificada

 string opcache.restrict_api

As funções gerais do OPcache são

Ele se encarrega de compilar e armazenar em cache um script PHP sem executá-lo

 opcache_compile_file

Obtém informações de configuração sobre o cache

 opcache_get_configuration

Permite acesso a informações de status sobre o cache

 opcache_get_status

Invalide um script em cache

 opcache_invalidate

Indica se um script é armazenado em cache no OPcache

 opcache_is_script_cached

Permite que você reinicie o conteúdo do cache de opcode

 opcache_reset

Como podemos ver, esta extensão do PHP será útil para melhorar significativamente o desempenho desta linguagem e assim funcionar de uma forma muito mais abrangente.

wave wave wave wave wave