An XML appliance is a specialised piece of almost ESB-like hardware offering facilities like:
- Hardware encryption/decryption
- Digital signature creation/verification
- Fine grained Authentication, Authorization, and Auditing
- XML threat protection
- Dynamic routing
- Message filtering
- MIME, DIME, and MTOM attachment processing
- XML acceleration
- Web services management
- Service level monitoring
- EIS integration (Protocol conversion, MQ, JMS, Database, Webservices)
- WS-* support with registry/repository integration
So why would you want to use one of these?
- Enhance performance by removing the burden of CPU intensive XML processing from servers offering services
- Appliances are "hardened" in security terms (as compared to an out of the box server) so ideal for DMZ deployment
- Lower total cost of ownership
- Wrap legacy systems with limited service offerings with WS-* capable services
- Platform integration
IBM for example offers a suite of such appliances in its DataPower range: see the "IBM® WebSphere® DataPower® SOA Appliance Handbook" for a good introduction to the topic and IBM's offering.