Rich Faces 3.3.1 + Otimização da performance

2 respostas
S

Bom dia,

Estou desenvolvimendo um projeto que utiliza na camada de visão facelets+richfaces. Neste momento estou “tentando” melhorar a performance do Rich Faces, então fiz os procedimentos:

no web.xml eu coloquei

<context-param>
		<param-name>org.richfaces.LoadStyleStrategy</param-name>
		<param-value>ALL</param-value>
	</context-param>
	<context-param>
		<param-name>org.richfaces.LoadScriptStrategy</param-name>
		<param-value>ALL</param-value>
	</context-param>
	<context-param>
		<param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
		<param-value>true</param-value>
	</context-param>
	<context-param>
		<param-name>org.ajax4jsf.COMPRESS_STYLE</param-name>
		<param-value>true</param-value>
	</context-param>
	<context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>server</param-value>
        </context-param>
        <context-param>
             <param-name>com.sun.faces.COMPRESS_STATE</param-name>
             <param-value>true</param-value>
        </context-param>

Como ele carrega todos os scripts no inicio eu coloquei no Tomcat para compactar os scripts:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"
			   compression="on"  
			   noCompressionUserAgents="gozilla, traviata"  
			   compressableMimeType="text/html,text/xml,text/css,text/javascript"

Estes procedimentos melhoram um pouco porém mesmo compactando ao iniciar o sistema é carregado um arquivo ui.pack.js.jsf que possui 156Kb que faz com que demore para abrir a página a primeira vez. Com isso eu tenho alguns questionamentos:

  • Existe alguma outra coisa que eu possa fazer para melhorar o tempo de carregamento das páginas?
  • Estes procedimentos estão certos?
  • Como eu faço para colocar um “Cache-Control” no ui.pack.js.jsf
  • Na primeira página que o usuário abre do sistema eu não preciso de nenhuma função js, tem como fazer uma carga tardia deste js? Na primeira vez que o usário acessa o sistema está demorando 15s para começar mostrar alguma informação e 20s para mostrar todas as informações. Seria bom se fosse 5s para começar mostar as informações e 15s para mostrar todas as informações, alguém tem alguma dica para isso?

Obrigado.
>

2 Respostas

leandrogmuller

Ola colega.

Estou no mesmo caminho que você, tentando reduzir o trafego da banda reduzindo os scripts.
Bom, pelos testes que fiz o melhor caminho é utilizar como default as variaveis

exemplo:

org.richfaces.LoadScriptStrategy
DEFAULT

Outro caminho é recolher todos os scripts, adaptalos a arquivos js e chama-los manualmente nos jsf.
problema que se faltar algum dara problema.

Antigamente eu tentei utilizar a compressão do tomcat, porem com testes de rede verifiquei que ela não funciona.
O melhor caminho é o deflate do apache2.
Porem reparei que alguns scripts do richfaces não são compactados e pior, são recarregados novamente toda vez.
Motivo: Eles sofrem alteração devido eles serem criados pelo servilet no momento da execucão.

Estou no mesmo caminho que você.
Existem também tags do richfaces que utilizam muito scripts como o exemplo o calendar, cada inputcalendar que utiliza te consome 20k.
Optei por utilizar jquery pluguin jquery.datepick.js reduziu bastante os jsp.

Estou brigando todo dia com isso, precisar so postar aqui.
Abraços.

leandrogmuller

É colega, não teve como, tive que voltar para o myfaces, a rede dos clinetes não comportou o richfaces.

Criado 24 de junho de 2009
Ultima resposta 25 de jul. de 2009
Respostas 2
Participantes 2