Recently I have done POC for measuring perofrmence of various java web service frameworks axis2, jaxws, apache cxf with their supported XML data binding framework. I used top-down approach for web service development. After doing load test using SOAP UI (burst test, 600 seconds, 20 thread) I found Apache Axis2 + JiBX out performs other web service stacks, I also had custom implementation of processing message payload by using XPath and Stax. As per load test results I can rank them as axis2+jibx, axis2+abd+stax, axis2+xmlbeans, jaxws + jaxb, axis2 + adb, axis2+adb+XPath.
I recommend JiBX and Stax for performance reason, where JiBX is the XML binding framework and Stax is PULL parser. JiBX manipulates the byte code to weave its XML binding at compile time and most of the other frameworks are using JAVA reflection at runtime - makes them slow.
If you are writing or reading XML using java parser then go for Stax (part of JDK 6.. for other JDK download the Stax distribution). If you are looking for performance with XML binding framework then go for JiBX.
See the XML schema support before going for any of these XML data binding frameworks and also check your XML Schema design.
No comments:
Post a Comment