Apache Synapse - the lightweight ESB

Apache Synapse is a simple, lightweight and high performance Enterprise Service Bus (ESB) from Apache. Based on a small asynchronous core, Apache Synapse has excellent support for XML and Web services - as well as binary and text formats. The Synapse engine is configured with a simple XML format and comes with a set of useful transports and mediators. We recommend you start by reading the QuickStart and then trying out the samples.

For more information, see:

Introduction

Apache Synapse is a easy-to-use and lightweight ESB which offers a wide range of management, routing and transformation capabilities. With support for HTTP, SOAP, SMTP, JMS, FTP and file system transports. Included is first class support for standards such as WS-Addressing, Web Services Security (WSS), Web Services Reliable Messaging (WSRM), efficient binary attachments (MTOM/XOP) as well as key transformation standards such as XSLT, XPath and XQuery. Synapse supports a number of useful functions out-of-the-box without programming, but it also can be extended using popular programming languages such as Java, JavaScript, Ruby, and Groovy.

Status

The latest release of Synapse is 1.0. Its key features are

  • Proxy services - facilitating transport, interface (WSDL/Schema/Policy), message format (SOAP/POX), QoS (WS-Security/RM) and optimization switching (MTOM/SwA)
  • Non-blocking http/s transports based on Apache HttpCore for ultrafast execution and support for thousands of connections
  • Built in Registry/Repository, facilitating dynamic updating and reloading of the configuration and associated resources (e.g. XSLTs, XSD, JS, ..)
  • Easily extended via custom Java class/Spring mediators, or BSF Scripting languages (Javascript, Ruby etc)
  • Built in support for scheduling tasks using the Quartz scheduler
  • Load-balancing/Fail-over and Throttling support
  • WS-Security, WS-Reliable Messaging & Throttling configurable via WS-Policies
  • JMS message support for binary, plain text and XML and SOAP payloads
  • Lightweight, XML and Web services centric messaging model
  • Configurations serialized into a file system for versioning/backup and restoration
  • Support for Error handling and timeouts, and recovery
  • Many samples and a built-in Axis2 server to try out and experiment with samples (Samples includes WS-Security, JMS POX/Text messages, Script mediation and many more samples which can be run out of the box)
  • Enhanced documentation