XML appliances and SOA

24 05 2007

Enterprises trying to adopt SOA strategies are increasingly looking at the new breed of technologies like xml appliances. These appliances, typically, contain firmware and hardened chips to accelerate XML and XSLT based processing.

Products like DataPower (acquired by IBM), Reactivity (acquired by Cisco), Sarvega (acquired by Intel) and Layer7 have already made greater in-roads in terms of enterprise usage.

What are the real advantages of using these appliances? Since I have been exposed to DataPower, I can list them below:

  • Security – especially for internet facing applications. Handles DOS attacks, XML and XSL threats at wire-speeds. Supports WS-Security, SAML and LDAP. It also provides fine-grained access control.
  • Hardware based acceleration – Since SSL is, highly resource intensive, regular web servers like Apache or IIS can’t handle large volumes of SSL connections. Datapower comes with an SSL accelerator and can easily handle large volumes. Datapower also compiles XSL stylesheets and runs the compiled code on hardware which gives it dramatic performance.
  • Multi-protocol gateway – The X150, integration appliance from Datapower is a high-end version which includes multi-protocol gateway features besides security and routing capabilities. The multi-protocol gateway can talk multiple protocols (MQ, TIBCO EMS, FTP, HTTP, ODBC, SOAP based web services etc) and can act as an integration broker. The input and output can be text or binary and handles many data formats (XML, SOAP, Cobol copybook, SWIFT, EDI etc).
  • Firewalls and Proxies – XML firewalls and web serivce proxies can be configured easily to achieve service virtualization.

I am sure their competitors provide more or less the same set of features in their product lines. There was a comparison of XML gateways made in 2005, which rates Datapower very high when compared to other products.

I haven’t learned much about the drawbacks of these appliances, although I can list a few, I would like others who have used these appliances to post some.
The drawbacks, atleast for Datapower, are as follows:

  • Cost – X150 sells at $75,000 a piece. If the applications are primarily intranet based, one has to really justify the ROI on this piece of hardware.
  • Machine limitations – If the anticipated load increases (heavy concurrent usage, in a shared environment) the machine might be overloaded and will be subjected to CPU and memory limitations. The appliances themselves run on a very lightweight OS (usually Linux based).
  • No state and transaction management. The appliances, as of now, can’t handle state and can’t co-ordinate transactions (global). This may change in the future though and it might even threaten the existence of JEE servers.
  • Difficult to pin-point bugs and may end up as a firmware upgrade, which might take a long time. I happen to remember an issue we faced with DNS resolution and it took several weeks for us to come up with a workaround, let alone a fix.
  • Messaging support is not clean (i.e you don’t find all the features of JMS as a sender and a consumer) and is limited. So one should be vary of using messaging support and should be done on a case-by-case basis.



5 responses

28 05 2007

I don’t think these appliances would ever implement state and transaction management. The moment they come into that space, they are very much restricted to the same limitations application servers are currently facing.

In the future, I would not be surprised if application servers can come up with their own hardened versions and claim to be a hybrid product (app server + appliance).

31 05 2007

Implementing state and transaction management is indeed a problem for XML appliances which do not contain any hard drives, in particular for the IBM Datapower appliances which make a selling point of having “no spinning media” and running off flash memory instead. For the other XML Appliances which do contain hard drives, e.g. Forum, Reactivity, and Vordel, there is not such a problem with state and transactions.

15 02 2008

In our shop, we have been using XML appliances from DataPower (now IBM) for the past 3+ years. They definately juice up the transformation process to wire speed but they extremely forgiving when it comes to enforcing the well formedness of XSLT documents. Glaring errors (introduced unknowingly) like coding an statement incorrectly will not cause the transformation to fail.

13 08 2008
Blake Dournaee


First I would like to say that I work for Intel (which acquired Sarvega), so these are my opinions and not Intel’s. Also, just to be up front here, this comment will be some shameless promotion, but the topic caught my eye so I am compelled to respond 🙂

We are very familiar with DataPower’s product as well as hardware based XML appliances in general. At Intel we’ve come up with the idea of a software-based XML appliance. Usually the first reaction to this is a very confused one, namely, (a) Doesn’t that defeat the purpose because it can’t be as fast as firmware and (b) Why is Intel doing this?

For (a) let me be the first to say here that due to our XML acceleration model we are just as fast or faster as DataPower for all manner of XML processing (XSL, WS-Security/XML Security, XML Validation, Content Routing, XPath evaluation, XML limit checks, etc) based on our own comparisons and for (b) The software appliance model gives us flexibility to scale on multi-core servers, meaning it helps Intel sell more chips – XML/SOA is a horizontal technology.

We see that as a double-win for our customers – you get the same appliance performance, but instead get to scale on off-the-shelf servers that can be re purposed (instead of an appliance that turns into an expensive doorstop after a few years), and furthermore (this is probably most important), because it is software and not firmware, the product is actually *extensible* meaning you can add code, protocols, database support (for transactions) – it gives you more options and flexibility over the hardware appliance model but with all of the same benefits.

Anyhow, if you’d like to learn more, we’ve got a video on youtube: http://www.youtube.com/watch?v=_8LaqO7Gbgg

We also have a website with some more information: http://www.intel.com/software/soae


6 12 2009

If performance or memory usage is important for XML tasks, check out vtd-xml

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: