Bom dia Hugo,

Testou a versão 2.2?

No dia 29/05/2014, às 10:58, Hugo Ferreira <[email protected]> escreveu:

> João,
> 
> O problema aqui é que trata-se de uma aplicação AIR em vez de Flash, logo 
> acredito que o browser trate da descompressão e entregue ao Flash os dados 
> prontos.
> 
> 
> No dia 29 de Maio de 2014 às 10:50, João Fernandes 
> <[email protected]> escreveu:
> se correres em modo debug, mete um breakpoint onde ele indica deliveryInDoubt 
> e vez a razão pela qual isso acontece. Algo está a ser transformado 
> indevidamente. Supostamente os dados já chegam descompactados ao Flash pois 
> quem é suposto descompactar é o browser e não o flash em si. Usamos gzip com 
> o FluorineFX e funciona na perfeição, temos respostas de 85kb com uma centena 
> de entidades com umas 10 propriedades dais quais tem N colecções com dezenas 
> de outras entidades.
> 
> 
> 2014-05-28 23:17 GMT+01:00 Hugo Ferreira <[email protected]>:
> Boa noite,
> 
> Finalmente dei com isto.
> Nos testes que fiz em desktop, de certeza que ouve variações na performance 
> da rede ou do servidor.
> 
> Agora estou na posse de dados mais científicos e acredito que pouca gente ou 
> ninguém esteja a usar compressão com AMFPHP.
> 
> O plugin que referes é para o AMFPHP 2.X. O AMFPHP 1.9 já traz compressão 
> através do plugin do próprio PHP no entanto por defeito não funciona (tem um 
> bug), pelo menos com a actual versão do PHP.
> 
> O que se tem de fazer para de facto activar a compressão na resposta ?
> 1. No php.ini colocar zlib.output_compression = on (descomentar a linha de 
> código se tiver comentada)
> 2. No php.ini colocar zlib.output_compression_level = -1 (valor por defeito 
> de compressão) e descomentar a linha de código
> 3. Reiniciar o Apache para que as alterações tenham efeito
> 4. No Gateway.php do AMF 1.9, alterar a linha de código 
> if(!$outputCompression) para if($outputCompression == 1)
> 5. Garantir que no gatway.php do vosso backend, tenham a linha de código 
> $gateway->enableGzipCompression(25*1024); decomentada
> 6. Alterar o parâmetro deo enableGzipCompression para um valor menor (podem 
> fazer testes para perceber a partir de que ponto compensa a compressão versus 
> maior carga de processamento).
> 
> Só apenas depois de todos estes 6 pontos corrigidos é que terão de facto a 
> compressão na ordem dos 80-85%, sendo que no charles fica evidenciado a 
> compressão no resultado, taxa de compressão, menor tempo de resposta.
> 
> No entanto no charles não é possível analisar os dados devolvidos porque o 
> charles recebe apenas dados comprimidos e o Flex também não sabe lidar com o 
> resultado, gerando um fault na chegada do resultado: 
> Client.Error.DeliveryInDoubt
> 
> Consegui a compressão desejada no entanto o Flex não sabe lidar com a mesma 
> ou falta-me fazer algo para indicar que ele deve descomprimir os resultados !
> É como morrer na praia. Alguém tem alguma sugestão ?
> 
> Se não for possível existe sempre a garantia de comprimir manualmente os 
> dados na origem (os serviços mais pesados e descomprimir manualmente no 
> destino).
> 
> 
> No dia 28 de Maio de 2014 às 18:40, APintex Gmail <[email protected]> 
> escreveu:
> 
> AMFPHPGZIP
> 
> http://www.silexlabs.org/137377/exchange/exchange-amfphp/amfphp-plugin-amfphpgzip/
> 
> 
> No dia 28/05/2014, às 17:30, Hugo Ferreira <[email protected]> escreveu:
> 
>> Sabes, vou seguir a tua sugestão e testar essa nova revisão "profiler" e 
>> comparar à 1.9. No mínimo tem de ter a mesma performance, caso contrário 
>> vou-me manter na 1.9.
>> 
>> 
>> No dia 28 de Maio de 2014 às 17:28, APintex Gmail <[email protected]> 
>> escreveu:
>> Hugo,
>> 
>> Já que está em 'testes', que tal perder (ganhar) um pouco de tempo também 
>> com a versão 2.2 profiler? ;)
>> A mim parece-me que se ganha com a migração
>> 
>> António Pinto
>> 
>> No dia 28/05/2014, às 17:26, Hugo Ferreira <[email protected]> escreveu:
>> 
>>> Boa questão.
>>> 
>>> Infelizmente não estou a usar essa versão, logo desconheço. Lembro-me que 
>>> nos meus testes, a v2 do AMFPHP era pior que a v1.9 por isso nunca migrei.
>>> 
>>> Curioso que não encontro grande informação no Google acerca da questão da 
>>> compressão.
>>> Pelos meus testes (uma aplicação AIR Desktop) a compressão deu ganhos 
>>> gritantes (estou a falar na ordem dos 80%). Antes parecia rápido e agora 
>>> parece instantâneo.
>>> 
>>> Hoje vou fazer testes de uma aplicação AIR Android cujo PHP está sem a 
>>> compressão activa de momento. Estou a depositar grandes expectativas nos 
>>> resultados pois trata-de uma aplicação com uma complexidade muito elevada e 
>>> em que algumas chamadas devolvem muitas strings (largas centenas), logo 
>>> irão dar origem a um elevado índice de compressão.
>>> 
>>> 
>>> No dia 28 de Maio de 2014 às 17:19, APintex Gmail <[email protected]> 
>>> escreveu:
>>> Boa tarde Hugo,
>>> 
>>> Utilizo a versão 2.2 (act agora para a nova 2.2 Profiler).
>>> Nos testes que fiz anteriormente, tinha chegado à conclusão que a versão 
>>> 2.2 não tinha grandes diferenças de performance com a 1.9, iniciando o 
>>> projecto actual com a 2.2
>>> Nesta versão, não existe o gateway.php e a questão é: como activo 
>>> GzipCompression (se é que é necessário nesta versão)?
>>> 
>>> António Pinto
>>> 
>>> No dia 28/05/2014, às 11:54, Hugo Ferreira <[email protected]> 
>>> escreveu:
>>> 
>>>> OK, já percebi que é necessário o módulo zlib activo que é usado na 
>>>> compressão/descompressão pelo PHP.
>>>> 
>>>> Basicamente colocar a ON no php.ini: zlib.output_compression = On
>>>> 
>>>> Esta aplicação mobile foi testada num servidor com a opção a Off. Irei 
>>>> fazer um novo teste.
>>>> 
>>>> 
>>>> No dia 27 de Maio de 2014 às 01:22, Hugo Ferreira <[email protected]> 
>>>> escreveu:
>>>> Curioso. Enquanto que em AIR-Desktop notou-se melhoras, fiz testes de 
>>>> performance (por relógio) no Android e o tempo foi semelhante entre usar o 
>>>> parâmetro e não usar !
>>>> 
>>>> 
>>>> No dia 27 de Maio de 2014 às 00:59, Hugo Ferreira <[email protected]> 
>>>> escreveu:
>>>> 
>>>> João,
>>>> 
>>>> Coloquei agora o valor no extremo, ou seja, nem lhe passei parâmetro (o 
>>>> que estava era o default do AMFPHP) e o tempo reduziu em cerca de 80% !!! 
>>>> Ficou magnificamente rápido. Quase nem dá para acreditar.
>>>> 
>>>> Enquanto que reduziu muito no tempo de resposta (claramente a nível de 
>>>> percepção e também a nível do que consta no charles), no charles consta o 
>>>> mesmo valor total em KB, o que é estranho. Ou seja em vários testes (com o 
>>>> valor por defeito e sem parâmetro), sem parâmetro é sempre muito mais 
>>>> rápido mas o total em KB é sempre o mesmo. A única explicação que vejo é o 
>>>> charles indicar sempre o valor descomprimido.
>>>> 
>>>> Muito obrigado,
>>>> Hugo.
>>>> 
>>>> 
>>>> No dia 27 de Maio de 2014 às 00:42, João Fernandes 
>>>> <[email protected]> escreveu:
>>>> 
>>>> certamente que 25*1024 é para indicar a partir de que tamanho é que o GZip 
>>>> é aplicado, se for inferior a esse tamanho, nada é feito. NO teu caso 
>>>> estas a dizer que só a partir de 25k é que é aplicado gzip, o que me 
>>>> parece um valor bastante elevado.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 2014-05-26 21:55 GMT+01:00 Hugo Ferreira <[email protected]>:
>>>> No charles vem no request:
>>>> Accept-Encoding: gzip, deflate
>>>> 
>>>> No gateway.php (do AMFPHP) já estava a descomentada a linha de código: 
>>>> $gateway->enableGzipCompression(25*1024);
>>>> 
>>>> Comentando ou descomentando esta linha de código, o total ocupado (visto 
>>>> no charles) é o mesmo !
>>>> 
>>>> Está a faltar-me alguma coisa. Eu esperava que ao usar 
>>>> enableGzipCompression no AMFPHP, o total de dados em cada chamada, 
>>>> diminui-se drasticamente !
>>>> 
>>>> 
>>>> No dia 26 de Maio de 2014 às 11:08, João Fernandes 
>>>> <[email protected]> escreveu:
>>>> 
>>>> Certamente terás forma de configurar isso no AMFPHP se não estiver já 
>>>> activo. Já validaste nos headers com o charles se a resposta não vem 
>>>> marcada como usando gzip?
>>>> 
>>>> 
>>>> 2014-05-26 10:49 GMT+01:00 Hugo Ferreira <[email protected]>:
>>>> Bom dia,
>>>> 
>>>> Parece que o AMFPHP suporta compressão em formato gzip, evitando ter de 
>>>> comprimir os dados dados manualmente e descomprimir no outro ponto mas não 
>>>> diz como usar com RemoteObject.
>>>> Alguém já usou e pode-me explicar o que tenho de configurar no 
>>>> RemoteObject no lado do Flex e no lado do AMFPHP ?
>>>> 
>>>> 
>>>> Obrigado,
>>>> Hugo.
>>>> 
>>>> -- 
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>>> Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>>> envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para 
>>>> [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> 
>>>> João Fernandes
>>>> 
>>>> -- 
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>>> Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>>> envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para 
>>>> [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>> 
>>>> 
>>>> -- 
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>>> Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>>> envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para 
>>>> [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> 
>>>> João Fernandes
>>>> 
>>>> -- 
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>>> Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>>> envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para 
>>>> [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>>> Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>>> envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para 
>>>> [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>> 
>>> 
>>> -- 
>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>> Grupos do Google.
>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>> envie um email para [email protected].
>>> Para publicar uma mensagem neste grupo, envie um email para 
>>> [email protected].
>>> Visite este grupo em http://groups.google.com/group/riapt.
>>> Para mais opções, visite https://groups.google.com/d/optout.
>>> 
>>> 
>>> -- 
>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da 
>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do 
>>> Grupos do Google.
>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>>> envie um email para [email protected].
>>> Para publicar uma mensagem neste grupo, envie um email para 
>>> [email protected].
>>> Visite este grupo em http://groups.google.com/group/riapt.
>>> Para mais opções, visite https://groups.google.com/d/optout.
>> 
>> 
>> -- 
>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
>> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do 
>> Google.
>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>> envie um email para [email protected].
>> Para publicar uma mensagem neste grupo, envie um email para 
>> [email protected].
>> Visite este grupo em http://groups.google.com/group/riapt.
>> Para mais opções, visite https://groups.google.com/d/optout.
>> 
>> 
>> -- 
>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
>> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do 
>> Google.
>> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
>> envie um email para [email protected].
>> Para publicar uma mensagem neste grupo, envie um email para 
>> [email protected].
>> Visite este grupo em http://groups.google.com/group/riapt.
>> Para mais opções, visite https://groups.google.com/d/optout.
> 
> 
> -- 
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para 
> [email protected].
> Visite este grupo em http://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.
> 
> 
> -- 
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para 
> [email protected].
> Visite este grupo em http://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.
> 
> 
> 
> -- 
> 
> João Fernandes
> 
> -- 
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para 
> [email protected].
> Visite este grupo em http://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.
> 
> 
> -- 
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da Comunidade 
> Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo, 
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para 
> [email protected].
> Visite este grupo em http://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.

-- 
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie 
um email para [email protected].
Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Visite este grupo em http://groups.google.com/group/riapt.
Para mais opções, consulte https://groups.google.com/d/optout.

Responder a