Deployment Scenarios

To communicate with another application over EbMS

  • an application communicates with the EbMS adapter through the SOAP API over HTTP(S)
  • the EbMS adapter communicates with another EbMS adapter through the EbMS Interface over HTTP(S).

It is also possible to connect multiple applications to one EbMS adapter.

EbMS Overview

See here for different deployment scenario examples.

Basic

EbMS Basic Deployment Scenario

Behind a reverse proxy

Scenario 1

EbMS Basic Deployment Scenario - Behind a reverse proxy - Scenario 1

The reverse proxy is only used for incoming traffic.

Scenario 2

EbMS Basic Deployment Scenario - Behind a reverse proxy - Scenario 2

The reverse proxy is used for both incoming and outgoing traffic.

See the URLMapping Service for overriding the CPA's endpoint URL to point to the Reverse Proxy.

Using a forward proxy

See here for the forward proxy settings.

EbMS Basic Deployment Scenario - Using a forward proxy

The forward proxy is used for outgoing traffic.

Scaling

Scaling through CPAs

EbMS Scaling Deployment Scenario - Scaling through CPAs

If your application connects to different parties using different CPAs, then you can load the different CPAs into different EbMS adapters, so that each EbMS adapter only handles one or several CPAs. Each EbMS adapter will have its own (unique) endpoint that also needs to be defined in the CPA(s) it handles.

Scaling with serverId

EbMS Scaling Deployment Scenario - Scaling with serverId

You can deploy different EbMS adapters each configured with a unique serverId. Each EbMS adapter will then handle its own requests. For this all EbMS adapters have to use the same database (cache and queues). The EbMS adapters need to be placed behind a load balancer so all the EbMS adapters are exposed at the same endpoint. In this way the load will spread amoungst the different EbMS adapters. You can also place a load balancer between your application(s) and the EbMS adapters.

Advanced scaling

You can start the EbMS adapter in EbMS Server, EbMS Client, SOAP API or Web Interface mode. You can also start multiple EbMS Servers, EbMS Clients, SOAP APIs and Web Interfaces simultaniously. All EbMS Servers, EbMS Clients, SOAP APIs and Web Interfaces have to use the same database (cache and queues). In this way you can divide the load over different components.

EbMS Scaling Deployment Scenario - Advanced scaling