entendendo conceitos caching com php

Post on 11-Jun-2015

2.882 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Palestras ministrada no V Encontro Anual das LinuxChix. Entendendo os conceitos de Caching com PHP

TRANSCRIPT

Entendendo os conceitos de caching em PHP

Encontro Nacional Linuxchix BrasilBrasília – DF – Brasil

Setembro – 2007

Adler Medrado

Entendendo os conceitos de caching em PHP

Apresentação

● Desenvolvedor/Analista no MDIC● Consultor pela Nesher Technologies● Instrutor de PHP na X25 Treinamentos● Membro da coordenação do grupo de

usuários PHP do DF● Entusiasta de PHP e Software Livre

Entendendo os conceitos de caching em PHP

Introdução

Esta palestra visa demonstrar os conceitos básicos de:

● Opcodes PHP● Quando é vantagem usar Cache● Caching de conteúdo● Caching de Recordsets● Ferramentas para caching

Entendendo os conceitos de caching em PHP

Opcodes PHP

● Abreviação de Operation Code.● É um trecho de instrução a ser executada

pelo computador.● Linguagem de máquina● Resultado da conversão do código de

programação para linguagem de máquina● Linguagem de máquina é difícil e tediosa

para seres humanos desenvolverem diretamente

Entendendo os conceitos de caching em PHP

Funcionamento do PHP sem uso de caching

INTERNETBROWSER SCRIPTPHP

FONTES DE DADOS

BANCODE

DADOS

DOCUMENTOXML

Entendendo os conceitos de caching em PHP

Funcionamento do PHP sem uso de caching

INTERNETBROWSER SCRIPT

PHP

FONTES DE DADOS

BANCODE

DADOS

DOCUMENTOXML

Cache

Entendendo os conceitos de caching em PHP

Caching de conteúdo

● É viável quando um determinado conteúdo não é modificado a todo instante. Não é viável para websites ou sistemas que possuem uma atualização de conteúdo muito constante.

● Exemplo:

– Website de notícias com cache que é atualizado a cada 10 minutos

Entendendo os conceitos de caching em PHP

Caching de conteúdo – Sem cache

Entendendo os conceitos de caching em PHP

Caching de conteúdo – Com cache

Entendendo os conceitos de caching em PHP

Caching de Recordset

● É viável quando algumas áreas do seu site são muito dinâmicas e com isso o cache de conteúdo se torna inviável.

● Exemplo:

– O mesmo website de notícias utilizado anteriormente.

Entendendo os conceitos de caching em PHP

Caching de Recordset

Entendendo os conceitos de caching em PHP

APC – Alternative PHP Cache

● Extensão aberta, livre e robusta.● Visa prover um framework que permita

otimização de códigos PHP através de caching

● Instalável via PECL

– PHP Extension Community Library– http://pecl.php.net

Entendendo os conceitos de caching em PHP

APC – Alternative PHP Cache

O APC é composto das seguintes funções:

●apc_add – Armazena variável no cache●apc_cache_info - Retorna dados armazenados pelo APC●apc_clear_cache – Limpa todo o cache●apc_define_constants – Define constantes para uso posterior●apc_delete – Remove uma variável guardada no cache●apc_fetch – Retorna variável gravaa no cache●apc_load_constants – Carrega um conjunto de constantes do cache●apc_sma_info – Retorna informações da memória compartilhada●apc_store – Armazena uma variável no cache

Exemplo:Mesmo website usado anteriormente.

Entendendo os conceitos de caching em PHP

APC – Alternative PHP Cache

Entendendo os conceitos de caching em PHP

Outras alternativas

● PHP Extension and Application Repository

– PEAR_Cache– PEAR_Cache_Lite

● Zend_Cache

– Simples Exemplo

Entendendo os conceitos de caching em PHP

Outras alternativas

<?php$frontendOptions = array( 'lifetime' => 30, // tempo de vida do cache 'automatic_serialization' => false // valor default);

$backendOptions = array('cache_dir' => './tmp/');

$cache = Zend_Cache::factory('Output', 'File', $frontendOptions, $backendOptions);

if(!$cache->start('mypage')) {

echo 'Olá mundo! '; echo 'Foi criado o cache';

$cache->end(); // Salva o cache e manda pro browser}

echo 'Não foi criado cache';

Entendendo os conceitos de caching em PHP

Outras alternativas

● eAccelerator - http://eaccelerator.net/● Zend Optimizer - http://www.zend.com● ionCube PHP Accelerator - http://www.ioncube.com

Entendendo os conceitos de caching em PHP

Perguntas?

Entendendo os conceitos de caching em PHP

Obrigado!http://www.neshertech.nethttp://www.neshertech.net/adler

top related