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.277 ]

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

Funtoo Linux - Pré-instalação

Instalação personalizada com Debian

Introduzindo prazerosamente aos poucos... o shell script

Recuperando senhas de e-mails esquecidas usadas no Claws-Mail

Relato I Fórum da Revista Espírito Livre

Leitura recomendada

Compactador de URL utilizando manipulação de diretórios do Linux com PHP

Como programar com OOP em PHP, uma classe simples

Abordagem exemplificada de orientação à objeto com PHP 5

Usando cache na classe Fast Template

Formantando nomes com caracteres especiais em PHP

  
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