Methods and apparatus for implementing a message driven processor in a client-server environment
First Claim
Patent Images
1. A message driven client-server system comprising:
- a. a plurality of sets of one or more client processes running on respective client processors, selectively generating request messages;
b. one or more server processes running on one or more host processors providing reply information;
c. a message driven processor for translating a request message from a client process into one or more units of work required to satisfy the request and for selectively sending a transaction request message to one or more server processes;
d. means for providing message based connectivity between one or more client processes and said message driven processor;
e. means for providing connectivity between the message driven processor and one or more server processes; and
,f. means for assembling reply information from a server process into one or more reply messages and sending the reply message to the client process which originated the request message;
whereby a message from a client processor is translated into units of work and transactions are selectively sent to the host processors and information retrieved is returned to the client in satisfaction of the request message.
3 Assignments
0 Petitions
Accused Products
Abstract
A message driven processor operates as middleware between clients and back-end hosts or servers in a large client-server system to reduce the number of concurrent sessions required to be supported by the network and to allow a common client user interface to divergent back-end systems. High level requests from a client in support of a business function are translated into workflows which may involve multiple requests to back-end servers by the message driven processor. Information resulting from workflows and information retrieved from back-end servers may be integrated into a single reply message to the requesting client.
-
Citations
19 Claims
-
1. A message driven client-server system comprising:
-
a. a plurality of sets of one or more client processes running on respective client processors, selectively generating request messages; b. one or more server processes running on one or more host processors providing reply information; c. a message driven processor for translating a request message from a client process into one or more units of work required to satisfy the request and for selectively sending a transaction request message to one or more server processes; d. means for providing message based connectivity between one or more client processes and said message driven processor; e. means for providing connectivity between the message driven processor and one or more server processes; and
,f. means for assembling reply information from a server process into one or more reply messages and sending the reply message to the client process which originated the request message; whereby a message from a client processor is translated into units of work and transactions are selectively sent to the host processors and information retrieved is returned to the client in satisfaction of the request message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of accessing information from a server in response to a message containing a request from a client process comprising:
-
a. retrieving a request profile associated with said message containing a list of units of work necessary to complete the request contained within the message; b. sending transaction requests from the message driven processor which require server action to satisfy the request of the request message to one or more host processors; c. receiving one or more server responses; d. formatting information received from said one or more servers into one or more reply messages to be sent to the client process which sent said message containing a request.
-
-
13. A method of reducing the number of communications sessions required in a client server system in which a plurality of client processes running on one or more client processors retrieves information from one or more host processors comprising:
-
a. sending a request message from a client process to a message driven processor without establishing an ongoing communication session; b. sending transaction requests from the message driven processor which require server action to satisfy the request of the request message to one or more host processors; and c. receiving information back from said one or more host processors and assembling the information into one or more reply messages to be sent to the requesting client process; whereby communication sessions are not required between client processors and each host.
-
-
14. A method of communicating information between one or more client processes running on respective client processors and one or more server processes running on one or more host processors by way of message driven processor which translates a request message from a client process into one or more transactions at least one or more of which are sent to a server process, comprising:
-
a. sending a request message from the client process to the message driven processor, the request message containing a Common Message Header identifying source and destination of the message, a Message Specific Context Header identifying a particular type of request and a Message Data Context Area containing data related to the request; and b. receiving from the message driven processor one or more reply messages containing information requested.
-
-
15. Apparatus for communicating information between one or more client processes running on respective client processors and one or more server processes running on one or more host processors by way of a message driven processor which translates a request message from a client process into plural transactions at least two of which are sent to a server process, comprising:
-
a. means at the message driven processor for dispatching transactions which do not depend on the results of each other concurrently to the one or more host processors; and b. means for assembling replies received from said one or more host processors into one or more reply messages to be sent to a client process which sent said request message.
-
-
16. A method for communicating information between one or more client processes running on respective client processors and one or more server processes running on one or more host processors, comprising:
-
a. sending a request message from a client process to an intermediate process; b. establishing a session control block at the intermediate process comprising a session static area and one or more message control blocks containing a request data area and a reply data area; c. accessing a message profile characteristic of the particular message sent to the intermediate process to identify units of work required to satisfy the request of said message; d. establishing one or more workflow dynamic areas as part of the session control block for transactions; e. selecting transactions for dispatch to one or more server processes; f. dispatching, concurrently, those units of work which do not depend upon completion of earlier dispatched units of work by retrieving a request view of data contained in the session control block and formatting that data into a workflow request; g. establishing or accessing a previously established communications session to a host running the server process required to satisfy the transaction and sending a transaction request to the host; h. receiving a response from a replying host; i. mapping data received from a replying host into a reply view of data; j. storing the reply view of data in the session control block; and
,k. assembling one or more reply messages from data stored in the session control block and sending the reply messages to the requesting client process.
-
-
17. A message driven client-server system comprising:
-
a. a plurality of sets of one or more client processes running on respective client processors; b. one or more server processes running on at least two host processors; c. first level message driven processor for translating a request message from a client process into one or more first level transaction messages required to satisfy the request; d. one or more second level message driven processors for translating a request message from a client or a transaction message from a first level message driven processor into one or more second level transactions required to satisfy the request; e. means for providing message based connectivity between a client process and said first level message driven processor; f. means for providing connectivity between the first and second level message driven processors and the server processes; and g. means for assembling reply information from a server process into one or more reply messages and sending the reply message to the client process which sent the request message; whereby a request message from a client processor is translated into one or more transactions and those transactions are selectively sent to one or more host processors in a hierarchy of host processors and information retrieved in response is returned to the client in satisfaction of the request message. - View Dependent Claims (19)
-
-
18. A method for processing messages from a client comprising:
-
a. selectively generating request messages from a plurality of sets of one or more client processes running on respective client processors; b. sending one or more request messages from one or more client processes to an intermediate processor; c. at an intermediate processor, translating a request message from a client process into one or more units of work required to satisfy the request and for selectively sending at least one request message to one or more server processes running on one or more host processors; d. providing reply information from said one or more server processes to the intermediate processor; e. assembling reply information from a server process into one or more reply messages and sending the reply message to the client process which originated the request message; whereby a message from a client processor is translated into transactions and the transactions are selectively sent to host processors and information retrieved is returned to the client in satisfaction of the request message.
-
Specification