Só tens de meter um breakpoint no NetConnectionChannel onde ele faz o channelDisconnectHandler para veres o callstack problemático e depois é veres o que obrigou a passar por ai.
2014-05-29 11:04 GMT+01:00 Hugo Ferreira <[email protected]>: > João, com esse dado novo vou fazer testes e perceber se de facto é um > problema do runtime. > APintex, não. Infelizmente não tive tempo para iniciar os testes com a > v2.2 Profiler. > > > No dia 29 de Maio de 2014 às 11:01, APintex Gmail <[email protected]>escreveu: > > 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 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 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.
