We are building a large scale system which relies on messaging heavily. We tried all kinds of serialization formats: Java, JAXB, XML and JSON with XStream. All of them were useless for high throughput. So we switched to Externalizable style serialization and were able to get much better performance. Which was evident upfront but we didn't have to write that code. Also now it behooves us to come with some kind of versioning scheme so that we push rolling upgrades to the cluster w/o bringing the whole cluster down. I can dig up the numbers if you would like.
> Date: Fri, 28 Mar 2008 11:18:04 -0400
> From: rodrick.brown@GMAI... > Subject: [ADVANCED-JAVA] java serialization alternative
> To: ADVANCED-JAVA@DISC... >
> Do any of you guys have experience with Java serialization and what
> kind of overheads it causes? As far as I know, it produces very large
> messages and is not particularly fast, so I am concerned about that
> given that it is pervasively used in our system core for sending
> messages between daemons over our messaging API.
> One possible alternative is http://xstream.codehaus.org/ which can be
> tuned to produce fairly small messages (by aliasing class names and
> types for example). However, I have no sense of the speed. I will
> do some performance tests.
> Comments, questions, etc?
> [ Rodrick R. Brown ]
> http://www.rodrickbrown.com > http://www.linkedin.com/in/rodrickbrown >
> This list is hosted by DevelopMentor® http://www.develop.com >
> View archives and manage your subscription(s) at http://discuss.develop.com