E outra coisa estou começando uma aplicação como sabe de um site, e o meu servidor de hospedagem nao tem nenhum acelerador de codigo instalado, vc poderia me dar algumas dicas como eu posso melhorar a perfomace do site que estou desenvolvendo emm Yii, tipo configuraçoes internas do framework. Tipo utilizar Helpers para montar a tag é melhor.
Resumindo tudo gostaria de começar esta aplicaçao com as configuraçoes correta para obter o maximo de desempenho do meu site pois um site lento ninguem merece…
Tudo o que vc fizer com um helper, fará na mão e usar Helpers é sempre mais lento. Mas assim mesmo eu acho que não compensa fazer na mão o html dos componentes, pq dificulta a manutenção e abre mais possibilidades de erros
Evitende que não da pra ser exagerado e usar CHtml::tag pra tudo, mas principalmente em campos de formulários, agiliza o desenvolvimento e da mais segurança, principalmente se vc usa como eu helpers mais complexos como o autocomplete.
Cache fazem falta. Na falta de uma opção como o memcache ou eAccelerator, vc pode usar o CDBCache (Criando uma tabela em memória de preferência, caso seu SGDB suporte) ou usar o CFileCache.
Bom tb modificar no seu index, quando em produção, retirar a constante de debug, apontar para o arquivo yiilite.php do framework (Que por ser apenas 1 arquivo, tem um tempo de carregamento menor).
O resto é contigo mesmo. Aplicativos desenvolvidos com Yii normalmente tem bom desempenho comparado a outros Fws. Não da pra precisar exatamente o quanto(Apesar que aqui no site tem um comparativo, mas acho exagerado), mas pelo que já vi do Yii, do Symphony e do Zend, o Yii é o que tem um menor ciclo, justamente por ser mais simples do que os outros, o que torna ele performático.
Ve se eu entendi, ativo atraves do codigo acima no arquivo config/main.php, na sessao components, certo.
So para eu enterder com esta configuração ele estara colocando todas as pagina do site em cache. por exemplo o layout sempre será a mesma coisa, so que o conteudo será dinamicos em algumas paginas, so que outras não.
Eu teria que chamar alguma funçao no controller destas paginas para que o seu carregamento seja mais rapido…
Tipo eu ativo, e depois eu tenho que fazer alguma coisa nos controlles ou ate mesmo nas views.
Para mim, a grande vantagem no uso do cache é na carga dos Active Records.
Sem cache, o Yii sempre irá no banco carregar os metadados das tabelas.
Com cache, o Yii carrega os metadados uma única vez e depois passa a utilizar as definições do cache. Fica muuuuuito mais rápido (pelo menos com o Oracle, que eu utilizo).
Ah! Por falar nisso, falta uma configuração importante no main.php:
No schemaCachingDuration vc define, em segundos, o tempo de cache dos metadados.
EDIT: cache de página eu só acho útil nos casos em que vc tem uma página cujos dados são demorados para processar e que não possuem grande frequência de modificações.
pois gostaria de saber se a logica esta correta, pois coloquei e nao deu nenhum erro, mas vai que estou cometendo algum erro e isso que fiz nao vai fazer diferença.