Comunidad de diseño web y desarrollo en internet online

Flex+BlazeDS Objetos Remotos tardan mucho tiempo n recibirse

Citar            
MensajeEscrito el 20 Jul 2010 11:26 am
Buenas a todos!

Tengo una aplicación en Flex que llama a metodos de mi servidor JBoss mediante RemoteObject. Todo me funciona correctamente pero cuando intento que el JBoss me devuelva una Array con un largo listado de Objetos, me tarda unos 12 segundos en recibirla.

Lo tengo montado de la siguiente manera:

Código :

<mx:RemoteObject id="myService" destination="remoteService" result="updateAll(event)"/>


El servicio me devuelve la Array correctamente y el updateAll() me tarda demasiado en recibir la lista. Claro está que cuanto mayor es esta Array que se devuelve, más tarda en recibirlo el Flex.

La definición del canal que uso es la siguiente:

Código :

        
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
            <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/>
        </channel-definition>


...y no se si deberia usar streaming o algun otro...

¿Alguna ayuda por favor? Gracias de antemano.

Por behere

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2010 12:43 pm
¿Cuan largo es el listado? ¿La segunda vez que carga info sigue estando lento?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Jul 2010 01:36 pm
De momento el listado es de 10 objetos, cada uno contiene sus muchos atributos y otra array de hasta 10. Dentro de estos ultimos hay tambien, a parte de sus atributos, otra array con otros objetos...

Afirmativamente, siempre me tarda lo mismo.

Grácias.

Por behere

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2010 02:09 pm
Ok, no trabajo con Blaze, pero tu descripción del tamaño es un poco vaga. Si son 100 es mucho, si son 1000 debería ser menos, si son 10 mil está perfecto. A su vez si el atributo es un texto de 5 carillas y son 100 está perfecto, etc.
Utiliza un sniffer (por ejemplo http://www.charlesproxy.com ) para chequear la actividad de back-end, tamaño de los paquetes, etc

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Jul 2010 02:42 pm
Gracias Jorge,
ya estaba al tanto de este programilla... te pego aquí una de las transacciones (llamada-respuesta) del remoteObject:

URL http://192.168.1.87:8090/miApli/messagebroker/amf
Status Complete
Response Code 200 OK
Protocol HTTP/1.1
Method POST
Content-Type application/x-amf
Client Address /127.0.0.1
Remote Address 192.168.1.87/192.168.1.87
Timing
Request Start Time 20/07/10 16:35:54
Request End Time 20/07/10 16:35:54
Response Start Time 20/07/10 16:36:04
Response End Time 20/07/10 16:36:04
Duration 9.34 sec
Request Duration 8 ms
Response Duration 20 ms
Latency 9.31 sec
Speed 7,90 KB/s
Response Speed 3.644,78 KB/s
Size
Request Header Size 604 bytes
Response Header Size 325 bytes
Request Size 350 bytes
Response Size 72,58 KB (74320 bytes)
Total Size 73,83 KB (75599 bytes)
Request Compression -
Response Compression -

Como puedes observar, me está tardanto casi 10 segundos en darme la respuesta. Tengo comprobado que el JBoss responde casi al instante y lo que tarda es "creo" la transferencia de la array de Objetos...

Y si quieres te concreto el tamaño de la Array, que será de unos 150 objetos de 4 tipos diferentes.

Grácias.

Por behere

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2010 02:46 pm
No parece un paquete demasiado grande .... quizás la estructura sea demasiado anidada ... no conozco BlazeDS, pero en implementaciones basadas en AMF (Remoting por ejemplo) ese tiempo es excesivo. ¿Algún javero que opine?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Jul 2010 09:06 pm
yo uso spring
URL http://localhost/InventarioInformatico-servidor/spring/messagebroker/amf
Status Complete
Response Code 200 OK
Protocol HTTP/1.1
Method POST
Content-Type application/x-amf
Client Address /127.0.0.1
Remote Address -
Timing
Request Start Time 20-07-10 04:58:37 PM
Request End Time 20-07-10 04:58:37 PM
Response Start Time 20-07-10 04:58:37 PM
Response End Time 20-07-10 04:58:37 PM
Duration 24 ms
Request Duration 7 ms
Response Duration 1 ms
Latency 16 ms
Speed 96,03 KB/s
Response Speed 1.183,59 KB/s
Size
Request Header Size 635 bytes
Response Header Size 220 bytes
Request Size 513 bytes
Response Size 992 bytes
Total Size 2,30 KB (2360 bytes)
Request Compression -
Response Compression -

de puta madre lo tuyo no puede ser tengo 20 apenas demora casi un segundo con mayor cantidad
que estructuras usas?
como esta estructura tu base de datos?
has optimazado tanto la persistencia como tu capa logica??


como esta constituida tu estructura , cuantos objectos llamas a la vez ??

estas ejecutando tu programa en forma remota o local???

Por xcom

Claber

530 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2010 09:07 pm
9.34 no es demasido viejo!!!

Por xcom

Claber

530 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jul 2010 09:22 pm
no habia percatado esta en ms , lo cual va aun mas rapido
conclusion

tu aplicacion behere requiere una profunda revision, asi que a leer libros ..

Por xcom

Claber

530 de clabLevel



 

firefox
Citar            
MensajeEscrito el 21 Jul 2010 07:33 am
Jajajajajaja! Deacuerdo... me paso a los libros... otra vez...

Publicaré la solución en cuanto la encuentre, gracias a todos!

Por behere

2 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.