Software:Apache Synapse

From HandWiki
Short description: Enterprise service bus

{{multiple issues|

Apache Synapse
Apache Synapse Logo
Developer(s)Apache Software Foundation
Stable release
3.0.1 / December 7, 2017; 6 years ago (2017-12-07)
RepositorySynapse Repository
Written inJava
Operating systemCross-platform
TypeEnterprise Service Bus
LicenseApache License 2.0
Websitehttp://synapse.apache.org

Apache Synapse is a lightweight and open-source enterprise service bus (ESB) and mediation engine. It began incubation at the Apache Software Foundation on August 22, 2005,[1] and became a subproject of the Apache Web Services project on January 2, 2007. After implementing support for legacy systems integration, it moved to a Top-Level Project of the Apache Software Foundation on the February 5, 2008.[2] Apache Synapse is released under the Apache License.

Synapse supports the creation of Proxy Services, which allows users to create virtual services on the ESB layer to front existing services. Existing services may be SOAP, POX/REST services over HTTP/S, as well as SOAP or legacy services over JMS, Apache VFS file systems (e.g. SFTP, FTP, file, zip/tar/gz, webdav, SMB, etc.), mail systems (e.g. POP3, IMAP, SMTP), Financial Information eXchange (FIX), Hessian, AMQP etc. The proxy services allows switching of transport, interface (WSDL/Schema/Policy), message format (SOAP 1.1, 1.2/POX/REST, Text, Binary/Hessian etc.), QOS (WS-Addressing, WS-Security, WS-Reliable Messaging) and message optimization (MTOM/SwA) etc.

Synapse has implemented a non-blocking HTTP/S transport implementation over the Apache HttpComponents/NIO module to handle thousands of concurrent requests using little resources and threads. This implementation is capable of connection throttling to control the rate at which large messages are read and processed, and thus can handle heavy concurrent loads of large messages using constant memory.

Synapse supports clustered deployments, with support for load balancing, throttling and caching over clustered deployments. The integration with an external Registry/Repository allows Synapse to use externally defined resources for mediation, as well as store its configuration into an externally managed Registry/Repository for SOA Governance.

See also

References

External links