Turck MMcache completo e sem mistérios

Nesse artigo aprenderemos a usar o Turk MMCache para dois fins: codificar scripts PHP, assim você pode distribuir seus scripts sem liberar o código-fonte, como se fosse compilado e para fazer cache de scripts dinâmicos PHP, o que melhora e muito a performance de seu site.

[ Hits: 28.492 ]

Por: Perfil removido em 09/04/2005


Jogo rápido: Instalando e configurando



Baseado em testes pessoais, qualquer igualdade que venha ter são meras coincidências.

Nesse artigo mostro como usar uma solução livre para "codificar - escondendo o fonte" e deixá-los mais rápidos com a opção "cachear" os seus fontes ".php".

No site oficial existe uma tabela comparativa de performance muito interessante utilizando outros programas do mercado, inclusive o Zend:
Infelizmente não é mais tão atualizado como antes, acho que o projeto realmente foi finalizado por estar tão completo. No site tem um ótimo changelog das versões.

O processo de instalação e configuração é bastante simples.

Download:
http://internap.dl.sourceforge.net/.../turck-mmcache-2.4.6.tar.bz2

Instalando:

# tar -xvjf turck-mmcache-2.4.6.tar.bz2
# /usr/bin/phpize
# ./configure --enable-mmcache=shared --with-php-config=/usr/bin/php-config
# make
# make install
# cd TurckLoader
# ./create_links


Configuração:

O Turck MMCache pode ser instalado tanto como extensão do Zend quanto do PHP, sendo assim você necessita editar o php.ini.

Para instalar como extensão de Zend:

zend_extension="/usr/lib/php4/mmcache.so"
mmcache.shm_size="16"
mmcache.cache_dir="/tmp/mmcache"
mmcache.enable="1"
mmcache.optimizer="1"
mmcache.check_mtime="1"
mmcache.debug="0"
mmcache.filter=""
mmcache.shm_max="0"
mmcache.shm_ttl="0"
mmcache.shm_prune_period="0"
mmcache.shm_only="0"
mmcache.compress="1"

Para instalar como extensão de PHP:

extension="mmcache.so"
mmcache.shm_size="16"
mmcache.cache_dir="/tmp/mmcache"
mmcache.enable="1"
mmcache.optimizer="1"
mmcache.check_mtime="1"
mmcache.debug="0"
mmcache.filter=""
mmcache.shm_max="0"
mmcache.shm_ttl="0"
mmcache.shm_prune_period="0"
mmcache.shm_only="0"
mmcache.compress="1"

No meu caso não possuo nada de Zend instalado (e nem quero :P), então vamos seguir com a segunda opção. Abra seu php.ini:

# vi /etc/apache/php.ini

e na parte de extensões, acrescente:

;UNIX Extensions
extension="mmcache.so"
mmcache.shm_size="16"
mmcache.cache_dir="/tmp/mmcache"
mmcache.enable="1"
mmcache.optimizer="1"
mmcache.check_mtime="1"
mmcache.debug="0"
mmcache.filter=""
mmcache.shm_max="0"
mmcache.shm_ttl="0"
mmcache.shm_prune_period="0"
mmcache.shm_only="0"
mmcache.compress="1"

Salve e depois vamos criar o diretório de cache:

# mkdir /tmp/mmcache
# chmod 0777 /tmp/mmcache

# cd /var/www/htdocs
# ln -s /usr/local/turck-mmcache-2.4.6/encoder.php compila.php


    Próxima página

Páginas do artigo
   1. Jogo rápido: Instalando e configurando
   2. Utilizando e testando
Outros artigos deste autor

Qmail + Patches + Performance Tuning, the Debian AMD64 way

Windows é mais fácil que Linux!? Tá louco!? Você sabe ler!?

Atualizar Switch 3Com 4400

Ubuntu - configurando dois monitores numa mesma placa de vídeo

Captive Portal Customizado

Leitura recomendada

PHP >= 5.1 x horário de verão brasileiro

BolachaMALPPH Apache X Lighttpd X PHP/FastCGI X APC X HTTPREF X MySQL

Tags automáticas em URLs com a classe urlmatch da PHP

Capturando conteúdo de sites em PHP

Criando gráficos com a classe JPGraph (parte 2)

  
Comentários
[1] Comentário enviado por fabio em 09/04/2005 - 14:30h

Semanas atrás tentei usar o mmcache aqui no VOL, porém não consegui fazê-lo funcionar em conjunto com o Fasttemplate nem por reza. Se alguém já tiver conseguido tal proeza, entre em contato :)

[]'s,
Fábio

[2] Comentário enviado por removido em 09/04/2005 - 14:40h

OPa!,

fala ae fabião... então cara inclusive eu dei uma frisada no artigo:

==============================================
PS: se você trabalha com alguma ferramenta de template tipo um Smarty (smarty.php.net), você precisa copiá-los para o diretório de compilados.
==============================================

Porque a idéia(Pelo menos transparece isso) não compilar essas coisas como ferramentas de templates e nem muito menos js, css e etc... naum adianta que naum vai xD rs. Já avia tentado com o Zend Safe Guard ou Zend Encoder como queirão(sendo o primeiro nome é mais frescura da galera do Zend heheh) e o mesmo tambem não consegue.

--
Abs,
guinet gmail com

[3] Comentário enviado por marlokko em 22/11/2005 - 01:59h

Olá pessoal,

Tenho instalado o php4.2.11 (acredito), e qdo tento executar ele dá erro informando que o Truck Mmcache foi compilado para PHP3.2.3... tudo bem, mas o problema é que quando tento compilar o truck para que ele funcione com minha versao de php ele dá erro logo na linha "# /usr/bin/phpize" dizendo que o arquivo não existe.

O que eu preciso fazer/baixar/instalar para poder compilar o Truck?

Grato pela atenção!

[4] Comentário enviado por marlokko em 22/11/2005 - 02:24h

Desculpa.. o meu php é 4.3.11... tento instalar o php-devel, acredito que seja o que está faltando mas dá incompatibilidade... como faço para descobrir a versão correta do PHP ?

[5] Comentário enviado por marlokko em 22/11/2005 - 02:26h

Resolvi colocar tb a mensagem de erro qdo tento executar o PHP:
[root@MeddiInv /]# /usr/bin/php
PHP Warning: [Turck MMCache] This build of "Turck MMCache" was compiled for PHP version 4.2.3. Rebuild it for your PHP version (4.3.11) or download precompiled binaries.
in Unknown on line 0
PHP Warning: Unknown(): Unable to initialize module 'Turck MMCache' in Unknown on line 0

[6] Comentário enviado por fernandoamador em 18/04/2006 - 19:00h

Ótimo artigo...

[7] Comentário enviado por tatibrandani em 06/07/2006 - 10:32h

Oi pessoal,

Estou instalando o Turck mmcache , mas quando tento rodar o "createdb.php" ele da o seguinte erro:
This PHP script has been encoded with Turck MMcache, to run it you must install Turck MMCache or Turck Loader

alguém pode me dizer oque fazer?

Obrigada pela atenção!

[8] Comentário enviado por NewtonMan em 08/04/2010 - 18:30h

Esse Turk MMCache é meio "balela", eu já consegui extrair os fontes dele e deixa-los legíveis novamente.

Não adianta que isso não compila, ele "ofusca" e é reversível.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts