Conhecendo o Alternative PHP Cache (APC)


O APC é um cache de opcode que pode aumentar exponencialmente o desempenho da sua aplicação.

Entendendo Opcode:

Quando realizada um requisição para um script php, o engine do PHP lê o script e compila em bytecode. O bytecode está em um nível intermediário entre a linguagem de máquina e o código-fonte. Ele não é um executável, porém pode ser interpretado por uma máquina virtual, tendo maior portabilidade, pois independe da arquitetura do ambiente. No PHP, o bytecode gerado é chamado de opcode. O APC guarda o cache em opcode, o qual é reutilizado nas requisições subsequentes, ou seja, ele busca um opcode, o qual está em nível intermediário e será retornado de forma mais rápida. Com isso, ele reduz o tempo de processamento e melhora o desempenho do site ou sistema significativamente.

Instalação:

Em distribuições como Ubuntu, você pode facilmente instalar o APC  com o comando abaixo:

sudo apt-get install php-apc

Após instalar, o APC virá com um script o apc.php, que pode ser utilizado para administração do cache através de uma interface gráfica. Para acessar este arquivo será solicitada uma senha a qual pode ser definida dentro do arquivo.

Cache de objetos com APC:

Com APC você pode ter cache de objetos de uma forma simples, por padrão as funções do APC já fazem serialização de objeto antes de inseri-lo no cache e desserialização na hora de obtê-lo do cache. Para Inserir, basta fazer o seguinte:

Documentação:

A documentação pode ser encontrada diretamente no link http://php.net/manual/pt_BR/book.apc.php

Conclusão:

Tendo em vista que o cache fica dentro da memória RAM, você deve pesar a necessidade, o tamanho da aplicação e o que você tem de recursos disponíveis antes de utilizar este tipo de ferramenta, mas ao utilizar o conceito de cache de objetos de forma correta você obterá um crescimento de desempenho de forma exponencial. A ferramenta em si oferece várias funções que facilitam a criação e manipulação de cache, com isso aumentando a velocidade de produção ao utilizar o conceito.

Fernando Nunes

Assistente de desenvolvimento em PHP na Kinghost - Entusiasta do estudo de orientação a objeto e de todos os desafios e complexidades relacionados a ele.
Fernando Nunes

Últimos posts por Fernando Nunes (exibir todos)

Comentários

comentário(s)

Categories