WO1999057620A2 - Distribution of a service request in a client-server architecture - Google Patents

Distribution of a service request in a client-server architecture Download PDF

Info

Publication number
WO1999057620A2
WO1999057620A2 PCT/FI1999/000374 FI9900374W WO9957620A2 WO 1999057620 A2 WO1999057620 A2 WO 1999057620A2 FI 9900374 W FI9900374 W FI 9900374W WO 9957620 A2 WO9957620 A2 WO 9957620A2
Authority
WO
WIPO (PCT)
Prior art keywords
server
queue
service request
client
servers
Prior art date
Application number
PCT/FI1999/000374
Other languages
French (fr)
Other versions
WO1999057620A3 (en
Inventor
Harri TÖHÖNEN
Original Assignee
Sonera Oyj
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sonera Oyj filed Critical Sonera Oyj
Priority to AU38288/99A priority Critical patent/AU3828899A/en
Publication of WO1999057620A2 publication Critical patent/WO1999057620A2/en
Publication of WO1999057620A3 publication Critical patent/WO1999057620A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0029Provisions for intelligent networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer

Definitions

  • the present invention relates to a system as defined in the preamble of claim 1 for distribution of a service request in a computer system based on a client-server architecture and to a procedure as defined in the preamble of claim 8 for distribution of a service request in a computer system based on a client- server architecture.
  • the server/servers produces/produce services requested by the client/clients.
  • An agent acting between these is middleware, which is used to take care of e.g. the routing of service requests to the appropriate server, equalisation of load and management of transactions.
  • a typical area of application is telecommunication network management.
  • the client application is e.g. a customer management system and the server application represents e.g. an SCP intelligent network component (Service Control Point, SCP).
  • SCP Service Control Point
  • the node is physically dou- bled, so that both nodes contain the same service data.
  • the duplication must not be visible to the client process, but changes made by the client in the service data must be copied to both nodes .
  • the update request when the client sends a management data update request, the update request must be transmitted to all the servers and the management data must be updated in all the nodes to be managed, but the client must perceive the entire transaction as if it were only dealing with a single server/node.
  • a service request can be distributed in a client application separately to each identical resource. Thus, the distribution architecture is visible to the client application. Further, if an update operation in one of the nodes to be managed is unsuccessful e.g. due to a telecommunication problem, the result is that the nodes are in a non- consistent state because the update cannot be cancelled automatically from the middleware level.
  • a two- stage commitment procedure is previously known.
  • the changes caused by a service request are first saved temporarily, whereupon a transaction monitor sends a preliminary commitment command (pre- commit) to each server. If the transaction monitor receives a confirmation from each server, then it sends the servers an actual commitment command (commit) , and the changes caused by the service request are updated simultaneously. If no confirmation is received from one of the servers, then no commitment command is sent and the changes are not updated, thus preserving the consistency of resources.
  • Two-stage commitment is in itself a workable procedure.
  • the problem is that not all of the nodes to be managed are capable of it. In other words, a service request can only be cancelled if the cancellation decision is made from the client application. As a result, however, the distribution is visible to the client .
  • the object of the present invention is to disclose a new type of procedure and system for eliminating the above-mentioned drawbacks.
  • a specific object of the present invention is to disclose a solution for achieving transparent dis- tribution of a service request and consistency of resources .
  • the system of the invention for distribution of a service request in a computer system based on a client-server architecture comprises at least one client application/client process which sends service requests to servers; one or more server applications/server processes providing services which can be called by the client; and middleware means; further- more, the system comprises a multiplexing server, a queue system and queue handling means, which are implemented e.g. as software components. For each server, preferably a separate queue system and queue handling means are provided. This ensures maximal re- liability in failure situations.
  • the multiplexing server provides the same service interface as the actual servers, and the names of the services of the actual servers are changed, causing the clients' service calls to be directed to the multiplexing server.
  • the client's service request is copied and distributed to the servers for execution.
  • responses are obtained from the servers and a single response for the calling client is composed from them. If any one of the servers returns a successful response, then a successful response is returned to the client. Thus, the duplication is hidden from the client.
  • the service request is placed in the queue system for the server in question.
  • the multiplexing server does not take care of service requests placed in a queue system but is ready to serve subsequent service requests of the client/clients .
  • service requests not fulfilled are stored in server-specific queue systems, which comprise a separate queue for each service provided by the server.
  • the queues are based on prioritisation of requests, i.e. a service request entered in a queue with the highest priority is the first one to be served and removed from the queue.
  • the queue system is implemented e.g. in the form of a file.
  • the queue handling means are used to pass on the service requests placed in the queue system to the servers at predetermined time intervals for re-execution. For example, a list of the queues to be monitored is main- tained. A service request is taken from the queue, and the server service corresponding to the queue is called.
  • the present invention has the advantage that it allows transparent distribution of a service request, in other words, a client's service request can be copied to a plurality of servers without the copying being visible to the client. Furthermore, according to the invention, instead of cancellation of a transaction, a queue mecha- nism is used whereby attempts to execute the transaction are repeated until the fault has been corrected and the transaction is successfully carried out or until a time limit is exceeded. This makes it possible to achieve a greater reliability in failure situations than before. Moreover, the invention requires only minimal changes in the existing middleware architecture as regards the client and server processes, so it can be easily implemented and taken into use.
  • the multi- plexing server, the queue system and the queue handling means are logically disposed in conjunction with the existing middleware means between the client and the servers.
  • Each server communicates with a given telecommunication network component, which network components are managed by a management application communicating with the client.
  • the servers provide identical services to the client, with the difference that different servers communicate with different manifestations of the network components to be managed.
  • a table of the servers to which the service request is to be duplicated is maintained in the multiplexing server.
  • the services of the servers in the table are preferably called asynchronically by the multiplexing server, in other words, having transmitted a service request to one server, the multiplexing server starts transmitting the service request to the next server without waiting for a response from the first server. This allows parallel execution without delays.
  • a check is carried out on each server by the multiplexing server to determine whether there are already any service requests in the queues corresponding to the service in question. If the queue concerned already contains service requests, then the new service request is placed directly in the appropriate queue and assigned the lowest priority at the moment .
  • a cycle counter and/or a time stamp are/is attached to service requests transferred into a queue system to allow control of the length of time each service request is retained in the queue system.
  • the server service corresponding to the queue is called synchronically, in other words, a response to the call is awaited. If a message indicat- ing successful execution of the service request is received from the server, then the service request has been successfully executed. If the server is still unable to execute the service request, then the service request is again placed in the queue and the cycle counter for the service is incremented. However, if the time stamp and/or cycle counter of the service request exceed certain predetermined values, then the service request is deleted from the queue and the situation is logged.
  • the middleware means consist of Tuxedo middleware.
  • Fig. 1 presents an embodiment of the system of the invention
  • Fig. 2 presents a functional diagram of a system according to the invention.
  • Fig. 1 presents an embodiment of the system of the invention for implementing telecommunication network management in which a management application 8 is used to manage components 7 1 ,7 2 ,7 3 of the telecommunication network.
  • the network components are SCP nodes in an intelligent network, nodes 7 2 and 7 3 being backup copies of node 7 1 .
  • Nodes 7 2 and 7 3 thus contain the same intelligent network service data as node 7 1 .
  • a notable feature is that the SCP nodes 7 1 ,7 2 ,7 3 are incapable of two-stage commitment to data updates.
  • a management application 8 communicates with a client process 1, and the SCP nodes 7 1 ,7 2 ,7 3 communicate with server processes 2 1 ,2 2 ,2 3 .
  • Tuxedo middleware application management software 3 which takes care of e.g. routing of the service requests to the appropriate server, load equalisation and transaction management.
  • Tuxedo middleware application management software 3 is Tuxedo middleware application management software 3, which takes care of e.g. routing of the service requests to the appropriate server, load equalisation and transaction management.
  • Implemented as logical software components disposed between the client process 1 and the server processes 2 1 ,2 2 ,2 3 are a multiplexing server 4, queue handling means 6 1 , ⁇ 2 , ⁇ 3 and queue systems ⁇ 1 ⁇ 2 ⁇ 3 . For each server, there is one queue handling means and one queue system.
  • Fig. 2 presents a functional diagram of a system according to the invention in a Tuxedo environment.
  • a call for service y is issued, which service is actu- ally implemented as service y' in server A 2 1 and server B 2 2 .
  • configuration information is read from a run-time management information base (MIB) in Tuxedo 3.
  • the configuration information comprises e.g. server groups, routing data for the groups, queue pa- rameters and queue space data.
  • MIB run-time management information base
  • the configuration information comprises e.g. server groups, routing data for the groups, queue pa- rameters and queue space data.
  • the service request y is received by the multiplexing server 4
  • a check is carried out to establish whether the queue systems 5 1 and 5 2 (not shown) for servers 2 1 and 2 2 already contain any messages. In this way, the order of the service requests is maintained.
  • the name of the service is changed to y' .
  • a routing field is added to
  • a call for service y' is sent asynchronically to each application server 2 1 and 2 2 .
  • the routing field is assigned a value which is obtained from a table maintained by the multiplexing server 4, said table containing routing field values for the servers 2 1 and 2 2 .
  • the values were obtained from the Tuxedo 3 configuration information when the multiplexing server 4 was started up.
  • responses are obtained from the application servers 2 1 and 2 2 .
  • Tuxedo automatically collects the responses to asynchronous calls. The title part of the message is checked for errors, and the results are added to a re- suits table which contains table locations for each application server 2 1 and 2 2 . Based on the results table, a response message for the client application is composed.
  • the results table is analysed. If errors are detected e.g. in the response of application server 2 1 , then a time stamp and a cycle counter are attached to the message concerned. Further, the lowest priority in the queue system 5 1 corresponding to the application server 2 1 is found out and the message is assigned the next priority level below it. After this, the message is placed in the queue system 5 1 for the application server 2 1 .
  • the queues are polled using the queue handling means 6 1 and 6 2 (not shown) . For each service, there are specified queues in the queue systems 5 1 and
  • queue handling means 6 1 For each application server 2 1 , 2 2 there is one queue system 5 1 , 5 2 and one set of queue handling means ⁇ 1 , 6 2 .
  • a call for service y' is issued synchronously. Before the call, the time stamp and cycle counter are checked. If the time stamp is too old and the cycle counter has a sufficient value, then the message is deleted from the queue system 5 1 , and the situation is logged. If an erroneous response is still obtained from the applica- tion server 2 1 , then the message is placed back into the queue and the cycle counter value for the message is incremented.

Abstract

The present invention relates to a system and a procedure for distribution of a service request in a computer system based on a client-server architecture and comprising at least one client (1), which sends service requests to servers (21, 22, ..., 2n); one or more servers (21, 22, ..., 2n), which provide callable services for the client (1); and middleware means (3). According to the invention, the system comprises a multiplexing server (4), by means of which the client's (1) service request is copied and distributed to the servers (21, 22, ..., 2n) for parallel execution; a queue system (51, 52, ..., 5n) for storing service requests not yet executed; and queue handling means (61, 62, ..., 6n), by means of which the service requests placed in the queue system (51, 52, ..., 5n) are passed on for re-execution. The invention allows transparent distribution of the service request, guarantees improved reliability of operation in failure situations and consistency of resources.

Description

DISTRIBUTION OF A SERVICE REQUEST
BACKGROUND OF THE INVENTION
The present invention relates to a system as defined in the preamble of claim 1 for distribution of a service request in a computer system based on a client-server architecture and to a procedure as defined in the preamble of claim 8 for distribution of a service request in a computer system based on a client- server architecture.
In a three-level client-server architecture, the server/servers produces/produce services requested by the client/clients. An agent acting between these is middleware, which is used to take care of e.g. the routing of service requests to the appropriate server, equalisation of load and management of transactions.
A typical area of application is telecommunication network management. In this case, the client application is e.g. a customer management system and the server application represents e.g. an SCP intelligent network component (Service Control Point, SCP). When the operation of the SCP intelligent network component, i.e. the node to be managed, is to be rendered as reliable as possible, the node is physically dou- bled, so that both nodes contain the same service data. The duplication must not be visible to the client process, but changes made by the client in the service data must be copied to both nodes . In other words, when the client sends a management data update request, the update request must be transmitted to all the servers and the management data must be updated in all the nodes to be managed, but the client must perceive the entire transaction as if it were only dealing with a single server/node. In prior-art systems, a service request can be distributed in a client application separately to each identical resource. Thus, the distribution architecture is visible to the client application. Further, if an update operation in one of the nodes to be managed is unsuccessful e.g. due to a telecommunication problem, the result is that the nodes are in a non- consistent state because the update cannot be cancelled automatically from the middleware level.
In middleware environments, a two- stage commitment procedure is previously known. In such a pro- cedure, the changes caused by a service request are first saved temporarily, whereupon a transaction monitor sends a preliminary commitment command (pre- commit) to each server. If the transaction monitor receives a confirmation from each server, then it sends the servers an actual commitment command (commit) , and the changes caused by the service request are updated simultaneously. If no confirmation is received from one of the servers, then no commitment command is sent and the changes are not updated, thus preserving the consistency of resources.
Two-stage commitment is in itself a workable procedure. The problem is that not all of the nodes to be managed are capable of it. In other words, a service request can only be cancelled if the cancellation decision is made from the client application. As a result, however, the distribution is visible to the client .
SUMMARY OF THE INVENTION The object of the present invention is to disclose a new type of procedure and system for eliminating the above-mentioned drawbacks.
A specific object of the present invention is to disclose a solution for achieving transparent dis- tribution of a service request and consistency of resources . As for the features characteristic of the present invention, reference is made to the claims.
The system of the invention for distribution of a service request in a computer system based on a client-server architecture comprises at least one client application/client process which sends service requests to servers; one or more server applications/server processes providing services which can be called by the client; and middleware means; further- more, the system comprises a multiplexing server, a queue system and queue handling means, which are implemented e.g. as software components. For each server, preferably a separate queue system and queue handling means are provided. This ensures maximal re- liability in failure situations. The multiplexing server provides the same service interface as the actual servers, and the names of the services of the actual servers are changed, causing the clients' service calls to be directed to the multiplexing server. According to the invention, by means of the multiplexing server, the client's service request is copied and distributed to the servers for execution. By means of the multiplexing server, responses are obtained from the servers and a single response for the calling client is composed from them. If any one of the servers returns a successful response, then a successful response is returned to the client. Thus, the duplication is hidden from the client. For those servers which return an unsuccessful response due e.g. to a telecommunication failure preventing communication with the resource to be managed, the service request is placed in the queue system for the server in question. The multiplexing server does not take care of service requests placed in a queue system but is ready to serve subsequent service requests of the client/clients . Further, according to the invention, service requests not fulfilled are stored in server-specific queue systems, which comprise a separate queue for each service provided by the server. The queues are based on prioritisation of requests, i.e. a service request entered in a queue with the highest priority is the first one to be served and removed from the queue. The queue system is implemented e.g. in the form of a file. Further, according to the invention, the queue handling means are used to pass on the service requests placed in the queue system to the servers at predetermined time intervals for re-execution. For example, a list of the queues to be monitored is main- tained. A service request is taken from the queue, and the server service corresponding to the queue is called.
As compared with prior art, the present invention has the advantage that it allows transparent distribution of a service request, in other words, a client's service request can be copied to a plurality of servers without the copying being visible to the client. Furthermore, according to the invention, instead of cancellation of a transaction, a queue mecha- nism is used whereby attempts to execute the transaction are repeated until the fault has been corrected and the transaction is successfully carried out or until a time limit is exceeded. This makes it possible to achieve a greater reliability in failure situations than before. Moreover, the invention requires only minimal changes in the existing middleware architecture as regards the client and server processes, so it can be easily implemented and taken into use.
In an embodiment of the invention, the multi- plexing server, the queue system and the queue handling means are logically disposed in conjunction with the existing middleware means between the client and the servers. Each server communicates with a given telecommunication network component, which network components are managed by a management application communicating with the client. The servers provide identical services to the client, with the difference that different servers communicate with different manifestations of the network components to be managed.
In an embodiment of the invention, a table of the servers to which the service request is to be duplicated is maintained in the multiplexing server. The services of the servers in the table are preferably called asynchronically by the multiplexing server, in other words, having transmitted a service request to one server, the multiplexing server starts transmitting the service request to the next server without waiting for a response from the first server. This allows parallel execution without delays.
In an embodiment of the invention, before calling a service, a check is carried out on each server by the multiplexing server to determine whether there are already any service requests in the queues corresponding to the service in question. If the queue concerned already contains service requests, then the new service request is placed directly in the appropriate queue and assigned the lowest priority at the moment .
In an embodiment of the invention, a cycle counter and/or a time stamp are/is attached to service requests transferred into a queue system to allow control of the length of time each service request is retained in the queue system.
In an embodiment of the invention, to retrieve a service request from a queue by using queue handling means, the server service corresponding to the queue is called synchronically, in other words, a response to the call is awaited. If a message indicat- ing successful execution of the service request is received from the server, then the service request has been successfully executed. If the server is still unable to execute the service request, then the service request is again placed in the queue and the cycle counter for the service is incremented. However, if the time stamp and/or cycle counter of the service request exceed certain predetermined values, then the service request is deleted from the queue and the situation is logged.
In an embodiment of the invention, the middleware means consist of Tuxedo middleware.
BRIEF DESCRIPTION OF THE DRAWINGS In the following, the invention will be described by the aid of a few examples of its embodiments by referring to the attached drawing, wherein
Fig. 1 presents an embodiment of the system of the invention, and Fig. 2 presents a functional diagram of a system according to the invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT
Fig. 1 presents an embodiment of the system of the invention for implementing telecommunication network management in which a management application 8 is used to manage components 71,72,73 of the telecommunication network. In this example, the network components are SCP nodes in an intelligent network, nodes 72 and 73 being backup copies of node 71. Nodes 72 and 73 thus contain the same intelligent network service data as node 71. A notable feature is that the SCP nodes 71,72,73 are incapable of two-stage commitment to data updates. A management application 8 communicates with a client process 1, and the SCP nodes 71,72,73 communicate with server processes 21,22,23. Functioning be- tween the client process 1 and the server processes 21,22,23 is Tuxedo middleware application management software 3, which takes care of e.g. routing of the service requests to the appropriate server, load equalisation and transaction management. Implemented as logical software components disposed between the client process 1 and the server processes 21,22,23 are a multiplexing server 4, queue handling means 61 , β2 , β3 and queue systems δ1^2^3. For each server, there is one queue handling means and one queue system.
Fig. 2 presents a functional diagram of a system according to the invention in a Tuxedo environment. By means of a client application (not shown), a call for service y is issued, which service is actu- ally implemented as service y' in server A 21 and server B 22. First, configuration information is read from a run-time management information base (MIB) in Tuxedo 3. The configuration information comprises e.g. server groups, routing data for the groups, queue pa- rameters and queue space data. When the service request y is received by the multiplexing server 4, a check is carried out to establish whether the queue systems 51 and 52 (not shown) for servers 21 and 22 already contain any messages. In this way, the order of the service requests is maintained. The name of the service is changed to y' . A routing field is added to the message.
Next, a call for service y' is sent asynchronically to each application server 21 and 22. Be- fore the call, the routing field is assigned a value which is obtained from a table maintained by the multiplexing server 4, said table containing routing field values for the servers 21 and 22. The values were obtained from the Tuxedo 3 configuration information when the multiplexing server 4 was started up. Thus, the service requests are routed to different application servers. Next, responses are obtained from the application servers 21 and 22. It is to be noted that Tuxedo automatically collects the responses to asynchronous calls. The title part of the message is checked for errors, and the results are added to a re- suits table which contains table locations for each application server 21 and 22. Based on the results table, a response message for the client application is composed.
The results table is analysed. If errors are detected e.g. in the response of application server 21, then a time stamp and a cycle counter are attached to the message concerned. Further, the lowest priority in the queue system 51 corresponding to the application server 21 is found out and the message is assigned the next priority level below it. After this, the message is placed in the queue system 51 for the application server 21.
The queues are polled using the queue handling means 61 and 62 (not shown) . For each service, there are specified queues in the queue systems 51 and
52. For each application server 21, 22 there is one queue system 51, 52 and one set of queue handling means β1, 62. Using queue handling means 61, a call for service y' is issued synchronously. Before the call, the time stamp and cycle counter are checked. If the time stamp is too old and the cycle counter has a sufficient value, then the message is deleted from the queue system 51, and the situation is logged. If an erroneous response is still obtained from the applica- tion server 21, then the message is placed back into the queue and the cycle counter value for the message is incremented.
The invention is not restricted to the examples of its embodiments described above, but instead many variations are possible within the scope of the inventive idea defined in the claims.

Claims

1. System for distribution of a service request in a data system based on a client-server architecture and comprising at least one client (1) , which sends service requests to servers (21, 22, ... , 2n) ; one or more servers (21,22, ... , 2n) , which provide callable services for the client (1) ; and middleware means (3) , characterised in that the system comprises
- a multiplexing server (4) , by means of which the client's (1) service request is copied and distributed to the servers (21, 22, ... , 2n) for parallel execution, the client (1) is notified of successful/unsuccessful execution of the service request, and if one of the servers (21, 22, ... , 2n) is unable to exe- cute the service request, then the service request is transferred into the queue system (51, 52, ... , 5n) for the server concerned;
- a queue system (51, 52, ... , 5n) for each server (21, 22, ... , 2n) for storing service requests not yet executed; and
- queue handling means (61, 62, ... , 6n) for each server (21,22, ... , 2n) , said means being used to pass on service requests placed in the queue system (51, 52, ... , 5n) for re-execution at certain time inter- vals.
2. System as defined in claim 1, characterised in that
- the multiplexing server (4) , the queue system (51,52, ... ,5n) and the queue handling means (61, 62 , ... , 6n) are disposed in conjunction with the middleware means (3) between the client (1) and the servers (21, 22 , ... , 2n) ;
- each server (21, 22 , ... , 2n) is connected to a telecommunication network component (71,72, ... , 7n) , which network components (71, 72 , ... , 7n) are managed using a management application (8) communicating with the client (1) ; and - the servers (21, 22 , ... , 2n) provide identical services for the client (1) .
3. System as defined in claim 1 or 2, characterised in that - a table of the servers (21, 22, ... , 2n) to which the service request is to be copied is maintained in the multiplexing server (4) ; and
- the services of the servers (21, 22, ... , 2n) are called asynchronically by the multiplexing server (4) .
4. System as defined in any one of the preceding claims 1 - 3, characterised in that
- before issuing a call for a service, a check is carried out on each server by the multiplexing server
(4) to determine whether there are any service re- quests in the queue systems (51, 52, ... , 5n) ; and
- if there are already service requests in the queue system ( 1 , 2 , ... , 5π) , then the service request is placed in the queue system (51, 52, ... , 5n) by the multiplexing server (4) and assigned the lowest prior- ity at the moment.
5. System as defined in any one of the preceding claims 1 - 4, characterised in that a cycle counter and/or a time stamp are/is attached to the service requests transferred into a queue system (╬┤1^2, ... , 5n) by the multiplexing server (4) .
6. System as defined in any one of the preceding claims 1 - 5, characterised in that
- using the queue handling means (61, 62, ... , 6n) , the services of the server (21, 22, ... , 2n) are called synchronically;
- if the server (21, 22, ... , 2n) is unable to carry out the service, then the service request is returned to the queue system (51, 52, ... , 5π) by the queue handling means (61, 62, ... , 6n) and the cycle counter for the service request is incremented; and
- if the time stamp and/or cycle counter of the service request exceed certain predetermined values, then the service request is deleted by the queue handling means (61, 62, ... , 6n) .
7. System as defined in any one of claims 1 - 6, characterised in that the middleware means (3) consist of Tuxedo middleware.
8. Procedure for distribution of a service request in a data system based on a client-server architecture and comprising at least one client (1) ; one or more servers (2X,22, ... , 2n) ; and middleware means (3) , in which procedure service requests are sent from the client (1) to the servers (21, 22, ... , 2") , and services called are provided for the clients (1) by the servers (21, 22, ... , 2n) , characterised in that
- by means of a multiplexing server (4), the cli- ent ' s (1) service request is copied and distributed to the servers (21, 22, ... , 2n) for parallel execution, the client (1) is informed about successful/unsuccessful execution of the service request, and if one of the servers (21, 22, ... , 2n) is unable to carry out the serv- ice request, then the service request is transferred into a queue system (51, 52, ... , 5n) for the server concerned;
- service requests not yet executed are stored in server-specific queue systems (51, 52, ... , 5n) ; and - using server-specific queue handling means (61, 62, ... , 6n) , service requests placed in the queue system (51, 52, ... , 5n) are passed on for re-execution at certain time intervals.
9. Procedure as defined in claim 9, char- acterised in that
- the multiplexing server (4) , the queue system (╬┤^╬┤2, ... ,5") and the queue handling means (6) are disposed in conjunction with the middleware means (3) between the client (1) and the servers (21, 22, ... , 2n) ; - each server (21, 22, ... , 2n) is connected to a telecommunication network component (71,72, ... , 7n) , which network components (71, 72, ... , 7n) are managed by a management application (8) communicating with the client (1) ; and
- identical services are provided for the client (1) by the servers (21, 22, ... , 2n) .
10. Procedure as defined in claim 8 or 9, characterised in that
- a table of the servers (21, 22, ... , 2n) to which the service request is to be copied is maintained in the multiplexing server (4) ; and - the services of the servers (21, 22, ... , 2n) are called asynchronically by the multiplexing server (4) .
11. Procedure as defined in any one of the preceding claims 8 - 10, characterised in that
- before issuing a call for a service, a check is carried out on each server by the multiplexing server
(4) to determine whether there are any service requests in the queue systems (51, 52, ... , 5n) ; and
- if there are already service requests in the queue system (51, 52, ... , 5") , then the service request is placed in the queue system (51, 52, ... , 5n) by the multiplexing server (4) and assigned the lowest priority at the moment .
12. Procedure as defined in any one of the preceding claims 8 - 11, characterised in that a cycle counter and/or a time stamp are/is attached to service requests transferred into a queue system (51, 52, ... , 5π) by the multiplexing server (4).
13. Procedure as defined in any one of the preceding claims 8 - 12, characterised in that - using the queue handling means ( 61 , β2 , ... , 6n) , the services of the server (21, 22, ... , 2π) are called synchronically;
- if the server (21, 22, ... , 2n) is unable to carry out the service, then the service request is returned to the queue system (51, 52, ... , 5n) by the queue handling means (61, 62, ... , 6n) and the cycle counter for the service request is incremented; and - if the time stamp and/or cycle counter of the service request exceed certain predetermined values, then the service request is deleted by the queue handling means (╬▓1, 62, ... , 6n) .
14. Procedure as defined in any one of the preceding claims 8 - 13, characterised in that the middleware means (3) consist of Tuxedo middleware.
PCT/FI1999/000374 1998-05-04 1999-05-04 Distribution of a service request in a client-server architecture WO1999057620A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU38288/99A AU3828899A (en) 1998-05-04 1999-05-04 Distribution of a service request

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI980985 1998-05-04
FI980985A FI980985A (en) 1998-05-04 1998-05-04 A system and method for decentralizing a service request

Publications (2)

Publication Number Publication Date
WO1999057620A2 true WO1999057620A2 (en) 1999-11-11
WO1999057620A3 WO1999057620A3 (en) 2000-01-13

Family

ID=8551648

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FI1999/000374 WO1999057620A2 (en) 1998-05-04 1999-05-04 Distribution of a service request in a client-server architecture

Country Status (3)

Country Link
AU (1) AU3828899A (en)
FI (1) FI980985A (en)
WO (1) WO1999057620A2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001080033A2 (en) * 2000-04-17 2001-10-25 Circadence Corporation System and method for implementing application -independent functionality within a network infrastructure
GB2401010A (en) * 2003-04-17 2004-10-27 Visto Corp A terminal side component and a server side component collaborate and together constitute a client to a server
GB2389686B (en) * 2002-06-13 2007-10-17 Cfph Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
US7496916B2 (en) * 2003-09-18 2009-02-24 International Business Machines Corporation Service and recovery using multi-flow redundant request processing
GB2455075A (en) * 2007-11-27 2009-06-03 Hsc Technologies Ltd A network controller for mirroring server applications
US20130086148A1 (en) * 2011-09-29 2013-04-04 Oracle International Corporation System and method for preventing single-point bottleneck in a transactional middleware machine environment
US8832217B2 (en) 2011-09-29 2014-09-09 Oracle International Corporation System and method for supporting different message queues in a transactional middleware machine environment
JP2014178917A (en) * 2013-03-15 2014-09-25 Ricoh Co Ltd Relay device, information processing system and program
US9690638B2 (en) 2011-09-29 2017-06-27 Oracle International Corporation System and method for supporting a complex message header in a transactional middleware machine environment
US9923987B2 (en) 2000-04-17 2018-03-20 Circadence Corporation Optimization of enhanced network links
US10033840B2 (en) 2000-04-17 2018-07-24 Circadence Corporation System and devices facilitating dynamic network link acceleration
CN109636165A (en) * 2018-12-04 2019-04-16 浙江诺诺网络科技有限公司 A kind of online customer service queue scheduling method of decentralization

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8898340B2 (en) 2000-04-17 2014-11-25 Circadence Corporation Dynamic network link acceleration for network including wireless communication devices
US8195823B2 (en) 2000-04-17 2012-06-05 Circadence Corporation Dynamic network link acceleration
US8065399B2 (en) 2000-04-17 2011-11-22 Circadence Corporation Automated network infrastructure test and diagnostic system and method therefor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0684558A1 (en) * 1994-05-23 1995-11-29 International Business Machines Corporation Distributed data processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0684558A1 (en) * 1994-05-23 1995-11-29 International Business Machines Corporation Distributed data processing system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
COMPUTER R. M. ADLER: 'Distributed Coordination Models for Client/Server Computing' vol. 28, no. 4, April 1995, USA, pages 14 - 22, XP002921099 *
Parallel and Distributed Systems 1996, Proceedings., 1996 Inter.., Volume, June 1996, S. Majumdar et al, "Performance of Scheduling Strategies for Client-Server Systems", pages 448-455, XP002921100 *

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10154115B2 (en) 2000-04-17 2018-12-11 Circadence Corporation System and method for implementing application functionality within a network infrastructure
US10205795B2 (en) 2000-04-17 2019-02-12 Circadence Corporation Optimization of enhanced network links
US10931775B2 (en) 2000-04-17 2021-02-23 Circadence Corporation Optimization of enhanced network links
US10858503B2 (en) 2000-04-17 2020-12-08 Circadence Corporation System and devices facilitating dynamic network link acceleration
US7020783B2 (en) 2000-04-17 2006-03-28 Circadence Corporation Method and system for overcoming denial of service attacks
US10819826B2 (en) 2000-04-17 2020-10-27 Circadence Corporation System and method for implementing application functionality within a network infrastructure
US7111006B2 (en) 2000-04-17 2006-09-19 Circadence Corporation System and method for providing distributed database services
US7120662B2 (en) 2000-04-17 2006-10-10 Circadence Corporation Conductor gateway prioritization parameters
US7143195B2 (en) 2000-04-17 2006-11-28 Circadence Corporation HTTP redirector
US10516751B2 (en) 2000-04-17 2019-12-24 Circadence Corporation Optimization of enhanced network links
US10329410B2 (en) 2000-04-17 2019-06-25 Circadence Corporation System and devices facilitating dynamic network link acceleration
WO2001080033A3 (en) * 2000-04-17 2002-10-03 Circadence Corp System and method for implementing application -independent functionality within a network infrastructure
WO2001080033A2 (en) * 2000-04-17 2001-10-25 Circadence Corporation System and method for implementing application -independent functionality within a network infrastructure
US10033840B2 (en) 2000-04-17 2018-07-24 Circadence Corporation System and devices facilitating dynamic network link acceleration
US9923987B2 (en) 2000-04-17 2018-03-20 Circadence Corporation Optimization of enhanced network links
US9723105B2 (en) 2000-04-17 2017-08-01 Circadence Corporation System and method for implementing application functionality within a network infrastructure
US7043563B2 (en) 2000-04-17 2006-05-09 Circadence Corporation Method and system for redirection to arbitrary front-ends in a communication system
US6990531B2 (en) 2000-04-17 2006-01-24 Circadence Corporation System and method for providing last-mile data prioritization
US8793176B2 (en) 2002-06-13 2014-07-29 Cfph, Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
US10019758B2 (en) 2002-06-13 2018-07-10 Cfph, Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
GB2389686B (en) * 2002-06-13 2007-10-17 Cfph Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
US10504181B2 (en) 2002-06-13 2019-12-10 Cfph, Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
US11023974B2 (en) 2002-06-13 2021-06-01 Cfph, Llc Systems and methods for providing a customizable spreadsheet application interface for an electronic trading system
GB2401010A (en) * 2003-04-17 2004-10-27 Visto Corp A terminal side component and a server side component collaborate and together constitute a client to a server
US7496916B2 (en) * 2003-09-18 2009-02-24 International Business Machines Corporation Service and recovery using multi-flow redundant request processing
GB2455075A (en) * 2007-11-27 2009-06-03 Hsc Technologies Ltd A network controller for mirroring server applications
GB2455075B (en) * 2007-11-27 2012-06-27 Hsc Technologies Ltd Method and system for providing hot standby capability for computer applications
US9690638B2 (en) 2011-09-29 2017-06-27 Oracle International Corporation System and method for supporting a complex message header in a transactional middleware machine environment
US20130086148A1 (en) * 2011-09-29 2013-04-04 Oracle International Corporation System and method for preventing single-point bottleneck in a transactional middleware machine environment
US9116761B2 (en) 2011-09-29 2015-08-25 Oracle International Corporation System and method for preventing single-point bottleneck in a transactional middleware machine environment
KR20140070611A (en) * 2011-09-29 2014-06-10 오라클 인터내셔날 코포레이션 System and method for preventing single-point bottleneck in a transactional middleware machine environment
US8832217B2 (en) 2011-09-29 2014-09-09 Oracle International Corporation System and method for supporting different message queues in a transactional middleware machine environment
JP2014178917A (en) * 2013-03-15 2014-09-25 Ricoh Co Ltd Relay device, information processing system and program
CN109636165B (en) * 2018-12-04 2022-12-13 浙江诺诺网络科技有限公司 Decentralized online customer service queuing scheduling method
CN109636165A (en) * 2018-12-04 2019-04-16 浙江诺诺网络科技有限公司 A kind of online customer service queue scheduling method of decentralization

Also Published As

Publication number Publication date
WO1999057620A3 (en) 2000-01-13
FI980985A0 (en) 1998-05-04
AU3828899A (en) 1999-11-23
FI980985A (en) 1999-11-05

Similar Documents

Publication Publication Date Title
US7024450B1 (en) Method and apparatus for deploying service modules among service nodes distributed in an intelligent network
EP1157529B1 (en) Method and apparatus for deploying service modules among service nodes distributed in an intelligent network
EP0467546A2 (en) Distributed data processing systems
CN100549960C (en) The troop method and system of the quick application notification that changes in the computing system
JP4637842B2 (en) Fast application notification in clustered computing systems
WO1999057620A2 (en) Distribution of a service request in a client-server architecture
US5276871A (en) Method of file shadowing among peer systems
US7912858B2 (en) Data synchronization method
US20030005350A1 (en) Failover management system
US5546574A (en) Peer-to-peer data concurrence processes and apparatus
US9703638B2 (en) System and method for supporting asynchronous invocation in a distributed data grid
US6119173A (en) System and method for communications and process management in a distributed telecommunications switch
US20060224699A1 (en) Methods and system for event transmission
EP1040679B1 (en) Method and system for provisioning databases in an advanced intelligent network
US5966713A (en) Method for determining the contents of a restoration log
EP1391131B1 (en) Data element information management in a network environment
JPH1084377A (en) Mutual backup method and routing method for a plurality of servers
KR100274848B1 (en) Network management method for network management system
JP3177674B2 (en) Module fault concealment method
Muñoz-Escoí et al. Flexible management of consistency and availability of networked data replications
WO1999027750A1 (en) Transaction roll forward
KR960016534B1 (en) Distributed system and service control of intelligent network service control management
WO1999008181A1 (en) Fault tolerant distributing client/server data communication system and method
JPH06139213A (en) Computer system
He et al. A fault tolerant real-time publisher/subscriber inter-process communication architecture

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
NENP Non-entry into the national phase

Ref country code: KR

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA