Paradigms of communication

From GreenVulcano Wiki
Jump to: navigation, search

Description

Depending on the type of communication (Synchronous / Asynchronous), on the role played by GreenVulcano® ESB (active / passive) and on the response management, it is possible to have from a minimum of one to a maximum of four operations constituting a single interaction client - server.

GreenVulcano® ESB Configuration

Legend

GreenVulcano® ESB is configured for managing four paradigms of communication:



These paradigms are explained bellow. The figure shows the legend used.

Synchronous-Synchronous

Synchronous-Synchronous


The following table shows the properties of the Synchronous-Synchronous communication:


Client GVESB Workflow Number Server
Communication Synchronous 1 Synchronous

Synchronous-Asynchronous

Synchronous-Asynchronous


The following table shows the properties of the Synchronous-Asynchronous communication:


Client GVESB Workflow Number Server
Communication Synchronous 1 Asynchronous

The decoupling of communication can happen in two ways:

  1. GreenVulcano® ESB, using a plugin, invokes the server and waits for the response into a queue jms, bmq, etc.
    plugin->server->jms
  2. GreenVulcano® ESB enqueues into a jms queue shared with server and waits for the response into another jms queue.
    jms->server->jms

Asynchronous-Synchronous

Asynchronous-Synchronous


The following table shows the properties of the Asynchronous-Synchronous communication:

Client GVESB Workflow Number Server
Communication Asynchronous 2/3 Synchronous

The decoupling of communication might happen in three ways:

  1. The Client makes a request to GreenVulcano® ESB using an Adapter. GreenVulcano® ESB elaborates the request, and after eventually communication with others systems, invokes a Service into the Client system to communicate the response.
    Adapter->plugin->server->plugin
  2. The Client makes a Request to GreenVulcano® ESB using an Adapter. GreenVulcano® ESB elaborates the request, and after eventually communication with others systems, enqueues the response in a queue shared with Client.
    Adapter->plugin->server->jms
  3. The Client enqueue a message, GreenVulcano® ESB dequeue it, an after eventually communication with others systems, enqueues the response in a queue shared with Client.
    jms->plugin->server->jms

Asynchronous-Asynchronous

Asynchronous-Asynchronous


The following table shows the properties of the Asynchronous-Asynchronous communication:

Client GVESB Workflow Number Server
Communication Asynchronous 4 Asynchronous

The decoupling of communication might happen in sixteen ways:

  1. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB sends it to the Server. The server elaborates the request and, using an adapter, sends the response to the Client (SendReply).
    Adapter->Plugin->server->Adapter->Plugin
  2. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB enqueues into a Server JMS queue. The server elaborates the request and, using an adapter, sends the response to the Client (SendReply).
    Adapter->JMS->server->Adapter->Plugin
  3. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB enqueues into a Server JMS queue. The server elaborates the request and, using an adapter, sends the response to the Client who enqueue it in a Client JMS queue (SendReply).
    Adapter->Plugin->server->Adapter->JMS
  4. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB sends to the Server. The server elaborates the request and, using an adapter, sends the response to GreenVulcano® ESB who enqueue it in a Client JMS queue (SendReply).
    Adapter->Plugin->server->JMS->Plugin
  5. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB sends to the Server. The server elaborates the request and enqueues it into a GreenVulcano® ESB queue which, through a Forward, sends the response to a Client JMS queue.
    Adapter->Plugin->server->JMS->JMS
  6. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB enqueues into a Server JMS queue. The server elaborates the request and enqueues it into a GreenVulcano® ESB queue which, through a Forward, sends the response to the Client.
    Adapter->JMS->server->JMS->Plugin
  7. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB enqueues into a Server JMS queue from which a Forward sends it to the Server. The server elaborates the request and enqueues it into a GreenVulcano® ESB JMS queue which, through a Forward, sends the response to the Client.
    JMS->Plugin->server->JMS->Plugin
  8. The Client sends a Request to GreenVulcano® ESB through an adapter, GreenVulcano® ESB enqueues into a Server JMS queue from which a Forward sends it to the Server. The server elaborates the request and through an Adapter sends it to GreenVulcano® ESB (SendReply) which enquues into a Client JMS queue.
    JMS->Plugin->server->Adapter->JMS
  9. The Client sends a Request, using an Adapter, to GreenVulcano® ESB who enqueues it into a JMS queue, and with a Forward sends it to the Server. The server elaborates the request and through an Adapter sends it to GreenVulcano® ESB (SendReply).
    JMS->Plugin->server->Adapter->Plugin
  10. The Client sends a Request, using an Adapter, to GreenVulcano® ESB who enqueues it into a JMS queue from which a Forward enqueues into a Server JMS queue. The server elaborates the request and through an Adapter sends it to GreenVulcano® ESB (SendReply).
    JMS->JMS->server->Adapter->Plugin
  11. The Client sends a Request, using an Adapter, to GreenVulcano® ESB who enqueues it into a Server JMS queue. The server elaborates the request and through an Adapter sends it to GreenVulcano® ESB (SendReply) which enqueues it into a Client JMS queue.
    Adapter->JMS->server->Adapter->JMS
  12. The Client sends a Request, using an Adapter, to GreenVulcano® ESB who enqueues it and successively a Forward enqueues it into a Server JMS queue. The server elaborates the request and through an Adapter sends it to GreenVulcano® ESB (SendReply) which enqueues it into a Client JMS queue.
    JMS->JMS->server->Adapter->JMS
  13. The Client sends a Request, using an Adapter. GreenVulcano® ESB enqueues it into a Server JMS queue. The server elaborates the request and enqueues the response into a GreenVulcano® ESB JMS queue which, using a Forward, enqueues it into a Client JMS queue.
    Adapter->JMS->server->JMS->JMS
  14. The Client sends a Request, using an Adapter. GreenVulcano® ESB enqueues and successively a Forward enqueues it into a Server JMS queue. The server elaborates the request and enqueues the response into a GreenVulcano® ESB JMS queue which, using a Forward, sends it to the Client.
    JMS->JMS->server->JMS->Plugin
  15. The Client sends a Request, using an Adapter. GreenVulcano® ESB enqueues and successively a Forward sends it the Server. The server elaborates the request and enqueues the response into a GreenVulcano® ESB JMS queue which, using a Forward, enqueues it into a Client JMS queue.
    JMS->Plugin->server->JMS->JMS
  16. The Client sends a Request, using an Adapter. GreenVulcano® ESB enqueues and successively a Forward enqueues it into a Server JMS queue. The server elaborates the request and enqueues the response into a GreenVulcano® ESB JMS queue which, using a Forward, enqueues it into a Client JMS queue.
    JMS->JMS->server->JMS->JMS