Yii Framework Forum: Perfomace na aplicação - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Perfomace na aplicação Rate Topic: -----

#1 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 30 August 2010 - 01:50 PM

Tem alguma diferenca de perfomace em usar:
CHtml::image() ao inves da tag <img src> direto.

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

Valeu mesmo desde já
0

#2 User is offline   Daniel Augusto Bastos 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 347
  • Joined: 25-May 09
  • Location:Rio de Janeiro - Brasil

Posted 30 August 2010 - 02:25 PM

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. 





Every solution creates a problem.
twitter.com/nenhumnick
0

#3 User is offline   ricardograna 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 376
  • Joined: 31-March 09
  • Location:Manaus/AM - Brazil

Posted 30 August 2010 - 02:58 PM

O principal mesmo é habilitar o cache e desabilitar o DEBUG. De resto, o Yii dá conta numa boa.
Yes, It Is!
0

#4 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 30 August 2010 - 03:05 PM

View Postricardograna, on 30 August 2010 - 02:58 PM, said:

O principal mesmo é habilitar o cache e desabilitar o DEBUG. De resto, o Yii dá conta numa boa.


Como faço para habilitar o cache, vi na documentação mais eu nao entendi.
Ja desativei o Debug e coloquei o yiilite no index. So falta o cache que nao sei como proceder.

Valews
0

#5 User is offline   Daniel Augusto Bastos 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 347
  • Joined: 25-May 09
  • Location:Rio de Janeiro - Brasil

Posted 30 August 2010 - 03:14 PM

Pra habilitar o cache, é muito difícil :) 

dar um pequeno exemplo da dificuldade habilitando o cache em arquivo. :) hauhauhua

'cache'=>array(
      'class'=>'system.caching.CFileCache',
    ),
 



é só alterar na seção dos componentes no arquivo de configuração. 

A config é válida pras funções Yii::app()->cache->get e Yii::app()->cache->set, que usam o cache padrão do sistema. 

Nada impede também vc de instanciar a classe de cache onde vc precisa e usar um cache específico pra um determinado momento sem ser o padrão. 


Every solution creates a problem.
twitter.com/nenhumnick
0

#6 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 30 August 2010 - 03:36 PM

View PostDaniel A. Bastos, on 30 August 2010 - 03:14 PM, said:

Pra habilitar o cache, é muito difícil :) 

dar um pequeno exemplo da dificuldade habilitando o cache em arquivo. :) hauhauhua

'cache'=>array(
      'class'=>'system.caching.CFileCache',
    ),
 



é só alterar na seção dos componentes no arquivo de configuração. 

A config é válida pras funções Yii::app()->cache->get e Yii::app()->cache->set, que usam o cache padrão do sistema. 


Nada impede também vc de instanciar a classe de cache onde vc precisa e usar um cache específico pra um determinado momento sem ser o padrão. 


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.

Devagar chego lá.

Agradeço a paciencia de vcs.
0

#7 User is offline   Daniel Augusto Bastos 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 347
  • Joined: 25-May 09
  • Location:Rio de Janeiro - Brasil

Posted 30 August 2010 - 04:41 PM

Não .. tem várias formas, tipos e aplicabilidades pro cache.. 

Isso ai só define o mecanismo de cache padrão que o Yii vai usar. 
Da uma olhada no link, na parte de cache.

http://www.yiiframew...aching.overview





Every solution creates a problem.
twitter.com/nenhumnick
0

#8 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 31 August 2010 - 06:33 AM

View PostDaniel A. Bastos, on 30 August 2010 - 04:41 PM, said:

Não .. tem várias formas, tipos e aplicabilidades pro cache.. 

Isso ai só define o mecanismo de cache padrão que o Yii vai usar. 
Da uma olhada no link, na parte de cache.

http://www.yiiframew...aching.overview


Primeiramente quero pedir desculpa por eu ser muito leigo em enterder a documentação do yii. estou aprendendo muito é com vcs :D

Tipo vc poderia dar um exemplo na pratica como usar o cache de pagina e de conteudo dinamico. tipo onde eu coloco cada codigo...

Agradeço muito.

Daqui uns dias eu chego lá... :) com ajudar de vcs.
0

#9 User is offline   ricardograna 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 376
  • Joined: 31-March 09
  • Location:Manaus/AM - Brazil

Posted 01 September 2010 - 08:03 AM

Eu nem uso as variáveis de cache do Yii..

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:

'components'=>array(
            'db'=>array(
                ...
                'schemaCachingDuration' => 600,
            ),
        ),


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.
Yes, It Is!
0

#10 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 01 September 2010 - 09:42 AM

View PostDaniel A. Bastos, on 30 August 2010 - 04:41 PM, said:

Não .. tem várias formas, tipos e aplicabilidades pro cache.. 

Isso ai só define o mecanismo de cache padrão que o Yii vai usar. 
Da uma olhada no link, na parte de cache.

http://www.yiiframew...aching.overview


'cache'=>array(
'class'=>'system.caching.CFileCache',
),


Tipo se eu usar a configuraçao acima e em alguma partes do meu site eu usar a configuraçao abaixo vai dar certo:
<?php if($this->beginCache('cabecalho', array('duration'=>3600))) { ?>

..conteudo...

<?php $this->endCache(); } ?>

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.

E onde ele grava os arquivos de cache?
0

#11 User is offline   Daniel Augusto Bastos 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 347
  • Joined: 25-May 09
  • Location:Rio de Janeiro - Brasil

Posted 08 September 2010 - 08:54 AM

Ta certo sim. O menu da minha aplicação é dinâmico, e uso de forma parecida pra não ficar gerando ele a cada requisição :)
Every solution creates a problem.
twitter.com/nenhumnick
0

#12 User is offline   Edson Rodrigues 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 378
  • Joined: 10-August 10

Posted 10 September 2010 - 12:41 PM

View PostDaniel A. Bastos, on 08 September 2010 - 08:54 AM, said:

Ta certo sim. O menu da minha aplicação é dinâmico, e uso de forma parecida pra não ficar gerando ele a cada requisição :)



Valeu brows
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users