Morning David, I've found that GWT serialization is pretty decent.
500-600 does seem like a lot of objects to be processing in one hit if performance on a low end server is a concern, but then again 20 seconds seems like an awfully long time too. What's the performance like in your dev environment? Are your JVM settings the same as those on your target server? What exactly do you mean by "low end server" in terms of CPU and RAM? Are you able to attach VisualVM that comes with the Sun JDK? This will quickly give you some clues as whether the process is limited by CPU or memory. You can also add a simple filter before the GWT servlet to give you a very coarse request timing - you can at least then rule out latencies and bandwidth to your server. How large are your serialized objects prior to compression? I think you can quickly test this by disabling gzip compression in FireFox: http://forgetmenotes.blogspot.com/2009/05/how-to-disable-gzip-compression-in.html If the uncompressed size is particularly large then memory and compression time may be the limiting factor. Finally, what kind of objects are you serialising? Are you attempting to send something like Hibernate objects over the wire (or some other kind of proxied objects) which are causing unexpected database hits? Cheers, Chris. On Sep 1, 10:19 pm, David Given <d...@cowlark.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > I've got an app intended to run on a fairly low-end server, so I've been > optimising it as hard as possible. > > Right now I've got it to the stage where the biggest bottleneck is the > GWT server-side serialisation, as it's squirting a large database sync > over to the client. My app is taking about 300ms to run the business > logic, 2000ms to construct the delta... and a staggering 20 *seconds* to > serialise it before sending it to the client. (Numbers approximate as I > can't insert any instrumentation into the GWT backend.) > > The packet's not very big; 20kB compressed on the wire, as far as I can > tell, and about 500-600 objects. > > Does anyone have any suggestions as to how I can speed this up? Right > now the time it takes is unacceptable. Can any alternative serialisation > system be plugged in, for example? > > - -- > ┌─── dg@cowlark.com ─────http://www.cowlark.com───── > │ > │ "People who think they know everything really annoy those of us who > │ know we don't." --- Bjarne Stroustrup > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Mozilla -http://enigmail.mozdev.org/ > > iD8DBQFKnY/pf9E0noFvlzgRAgZhAKCzYv2e7uWBtkzhB++walOQMK1xSACgnSIN > uKhpOfVQ+1k6XfSDFnogeSc= > =f4nY > -----END PGP SIGNATURE----- --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to google-web-toolkit@googlegroups.com To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en -~----------~----~----~----~------~----~------~--~---