Apache Synapse
Encyclopedia
Apache
Synapse is a simple, lightweight and extremely high performance open source enterprise service bus
(ESB) and mediation engine. It began incubation at the Apache Software Foundation
on August 22, 2005, and graduated as a sub project of the Apache Web Services project on January 2, 2007. After implementing extensive support for legacy systems integration, it moved out from the Apache Web Services project as a Top Level Project (TLP) of the Apache Software Foundation
on the February 5, 2008. Apache Synapse is released under the Apache License
.
Synapse supports the creation of Proxy Services, which allows users to easily 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. s/ftp, file, zip/tar/gz, webdav, cifs etc), Mail systems (e.g. pop3, imap, smtp), Financial Information eXchange (FIX), Hessian, AMQP etc. The proxy services allows easy 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 very 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 also 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
. Synapse can be easily extended with custom Java extensions or POJO classes, or via Apache BFS scripting languages such as Javascript, Ruby, Groovy etc. Synapse ships with over 50 samples that can be executed out of the box.
Apache Software Foundation
The Apache Software Foundation is a non-profit corporation to support Apache software projects, including the Apache HTTP Server. The ASF was formed from the Apache Group and incorporated in Delaware, U.S., in June 1999.The Apache Software Foundation is a decentralized community of developers...
Synapse is a simple, lightweight and extremely high performance open source enterprise service bus
Enterprise service bus
An enterprise service bus is a software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in Service Oriented Architecture...
(ESB) and mediation engine. It began incubation at the Apache Software Foundation
Apache Software Foundation
The Apache Software Foundation is a non-profit corporation to support Apache software projects, including the Apache HTTP Server. The ASF was formed from the Apache Group and incorporated in Delaware, U.S., in June 1999.The Apache Software Foundation is a decentralized community of developers...
on August 22, 2005, and graduated as a sub project of the Apache Web Services project on January 2, 2007. After implementing extensive support for legacy systems integration, it moved out from the Apache Web Services project as a Top Level Project (TLP) of the Apache Software Foundation
Apache Software Foundation
The Apache Software Foundation is a non-profit corporation to support Apache software projects, including the Apache HTTP Server. The ASF was formed from the Apache Group and incorporated in Delaware, U.S., in June 1999.The Apache Software Foundation is a decentralized community of developers...
on the February 5, 2008. Apache Synapse is released under the Apache License
Apache License
The Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....
.
Synapse supports the creation of Proxy Services, which allows users to easily create virtual services on the ESB layer to front existing services. Existing services may be SOAP
SOAP
SOAP, originally defined as Simple Object Access Protocol, is a protocol specification for exchanging structured information in the implementation of Web Services in computer networks...
, POX/REST services over HTTP/S
Https
Hypertext Transfer Protocol Secure is a combination of the Hypertext Transfer Protocol with SSL/TLS protocol to provide encrypted communication and secure identification of a network web server...
, as well as SOAP or legacy services over JMS
JMS
- Buildings :*EverBank Field, a sports stadium in Jacksonville, Florida, home of the Jacksonville Jaguars. Formerly known as Jacksonville Municipal Stadium...
, Apache VFS file systems (e.g. s/ftp, file, zip/tar/gz, webdav, cifs etc), Mail systems (e.g. pop3, imap, smtp), Financial Information eXchange (FIX), Hessian, AMQP etc. The proxy services allows easy 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
Https
Hypertext Transfer Protocol Secure is a combination of the Hypertext Transfer Protocol with SSL/TLS protocol to provide encrypted communication and secure identification of a network web server...
transport implementation over the Apache HttpComponents/NIO module to handle thousands of concurrent requests using very 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 also 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
SOA Governance
SOA governance is a concept used for activities related to exercising control over services in a service-oriented architecture . SOA governance can be seen as a subset of IT governance which itself is a subset of corporate governance. The focus is on those resources to be leveraged for SOA to...
. Synapse can be easily extended with custom Java extensions or POJO classes, or via Apache BFS scripting languages such as Javascript, Ruby, Groovy etc. Synapse ships with over 50 samples that can be executed out of the box.
See also
- Enterprise Service BusEnterprise service busAn enterprise service bus is a software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in Service Oriented Architecture...
- Service-oriented architectureService-oriented architectureIn software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
- Apache Axis2Apache Axis2Apache Axis2 is a core engine for Web services. It is a complete re-design and re-write of the widely used Apache Axis SOAP stack. Implementations of Axis2 are available in Java and C....
- Web serviceWeb serviceA Web service is a method of communication between two electronic devices over the web.The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". It has an interface described in a machine-processable format...
- Apache LicenseApache LicenseThe Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....