RE: [flexcoders] Re: how to improve performance when calling a Java remoteobject?
Check out my articles on working with large data that are on my blog. http://weblogs.macromedia.com/mchotin. You are seeing the exact problem of downloading lots of data. The time spent with the cursor not moving is the Player deserializing all of the data that comes back. If you only care about one field you will want to consider changing the data so that it is an array of just those values instead of an array of value objects. You may also want to consider paging. Matt -Original Message- From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Tuesday, February 07, 2006 1:47 PM To: flexcoders@yahoogroups.com Cc: flexcoders@yahoogroups.com Subject: Re: [flexcoders] Re: how to improve performance when calling a Java remoteobject? I guess we are confused because the Onresult should only run when results are available. We added a timer to see when they are available, and they are in the first 2 or 3 seconds of the 10-15 that it actually takes to see the clock go away. If we ask for the length of the result, it is actually available in those 2-3 first seconds after the clock stops. However, any other process seems to go to a queue that runs after the 10-15 seconds, including using the results. Thanks, |-+- | | | | | Dmitry Miller| | | [EMAIL PROTECTED] | | | Sent by: | | | flexcoders@yahoogroups.com | | | 02/07/2006 04:31 PM| | | Please respond to | | | flexcoders | | | | |-+- --- --| | | | To: flexcoders@yahoogroups.com | | cc: | | Subject: [flexcoders] Re: how to improve performance when calling a Java remoteobject?| --- --| Oscar, hi I don't think that you can improve RemoteObject performance. I had a similar problem and I ended up paginating the data. i.e. return the following object { items:Array; hasMoreRecords:Boolean; } Hopefully this helps --- Dmitry --- In flexcoders@yahoogroups.com, [EMAIL PROTECTED] wrote: We are doing some searches using a RemoteObject and displaying the result on a grid. We noticed that when getting more than 2000 records aprox, it was taking some time( between 10 and 15 seconds) before they were displayed . At the beginning we thought that it was the Grid which was slowing down the process. We thought that because after making the call the busy cursor ( clock) would stop, but would not go away for another 10-15 seconds, when we finally were able to see the results in the Grid. However, we made another test. We simply made the call to the RemoteObject and did not bind it to any component. We found that the 10-15 seconds were still there, so we are wondering what exactly Flex is doing that is taking that time. We also debugged our backend at we saw that the busy cursor stops exactly when the server sends back the results to the client. So what is happening in between? Is this something related to serialization? Our RemoteOject returns a VO, but we are only interested in one of the attributes that holds an Array. So we do something like this... var myDataProvider:Array = new Array(); Onresult ( result ) { myDataProvider = result.myArrayAttribute; } myDatagrid.dataProvider ={myDataProvider} Any ideas on how we can improve performance? Thanks --- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender and erase this e-mail message immediately. --- -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com Yahoo! Groups Links --- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from
Re: [flexcoders] Re: how to improve performance when calling a Java remoteobject?
I guess we are confused because the Onresult should only run when results are available. We added a timer to see when they are available, and they are in the first 2 or 3 seconds of the 10-15 that it actually takes to see the clock go away. If we ask for the length of the result, it is actually available in those 2-3 first seconds after the clock stops. However, any other process seems to go to a queue that runs after the 10-15 seconds, including using the results. Thanks, |-+- | | | | | Dmitry Miller| | | [EMAIL PROTECTED] | | | Sent by: | | | flexcoders@yahoogroups.com | | | 02/07/2006 04:31 PM| | | Please respond to | | | flexcoders | | | | |-+- -| | | | To: flexcoders@yahoogroups.com | | cc: | | Subject: [flexcoders] Re: how to improve performance when calling a Java remoteobject?| -| Oscar, hi I don't think that you can improve RemoteObject performance. I had a similar problem and I ended up paginating the data. i.e. return the following object { items:Array; hasMoreRecords:Boolean; } Hopefully this helps --- Dmitry --- In flexcoders@yahoogroups.com, [EMAIL PROTECTED] wrote: We are doing some searches using a RemoteObject and displaying the result on a grid. We noticed that when getting more than 2000 records aprox, it was taking some time( between 10 and 15 seconds) before they were displayed . At the beginning we thought that it was the Grid which was slowing down the process. We thought that because after making the call the busy cursor ( clock) would stop, but would not go away for another 10-15 seconds, when we finally were able to see the results in the Grid. However, we made another test. We simply made the call to the RemoteObject and did not bind it to any component. We found that the 10-15 seconds were still there, so we are wondering what exactly Flex is doing that is taking that time. We also debugged our backend at we saw that the busy cursor stops exactly when the server sends back the results to the client. So what is happening in between? Is this something related to serialization? Our RemoteOject returns a VO, but we are only interested in one of the attributes that holds an Array. So we do something like this... var myDataProvider:Array = new Array(); Onresult ( result ) { myDataProvider = result.myArrayAttribute; } myDatagrid.dataProvider ={myDataProvider} Any ideas on how we can improve performance? Thanks --- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender and erase this e-mail message immediately. --- -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com Yahoo! Groups Links --- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender and erase this e-mail message immediately. --- -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search