Mechanism for routing asynchronous state changes in a 3-tier...

Electrical computers and digital processing systems: multicomput – Star or tree computer networking

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S251000, C714S015000, C714S049000, C707S793000

Reexamination Certificate

active

06175876

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates to the field of multi-processing systems in an asynchronous processing environment, for example, computer networks, and in particular, to providing notification to affected end users about state changes in relevant service objects distributed in the network.
2. Background Information
Multi-processing systems are known, such as computer networks, and application programs may utilize resources which are distributed among the systems, e.g., a database located on a remote computer on the network may be accessed by an application program started by an end user interface on a network/personal computer (PC). Such an application program is referred to herein generically as a network application and PC is used for both network and personal computers.
It is generally desirable in a program with an end user interface to display the most up to date state of the data or entities that the end user is concerned with. If an end user performs an operation that resulted in a state change in data or an entity (from here on data, data or other entities will just be referred to as data) it is fairly straight forward to update the end user interface because the program knows that it changed the data and it knows that the user who caused the data to change is interested in that data. Other end users who are viewing the same data also need to have their views updated. This is a more complex problem, but it has generally been solved by data objects keeping track of the views that are interested in them so that they can notify the views when the data changes. Views register themselves with the data that they are interested in and unregister when they are deleted or no longer interested. This technique is known by many names such as the Observer design pattern or Model-View-Controller (MVC).
Using the observer pattern on a single system or in a client server is reasonably straight forward, but solving the problem of keeping the end user interface up to date in a 3-tier application is much more difficult. A 3-tier application that uses asynchronous communications between the 2nd and 3rd tier presents a different and much more complex problem. An exemplary 3-tier network application environment consists of the following 3-tiers.
On tier one, there is an end user interface on a PC. On tier two, there is a central application server associated with the end user that drives the majority of the application logic. On tier three, there are other systems that the application server deals with to perform distributed operations, called endpoints systems in this 3 tier model.
Asynchronous communication between the 2nd and 3rd tiers allows for the central application server to issue requests to the tier 3-systems in parallel. If the end user operation is to perform a task on 100 tier 3 systems, for example, it is not desirable for the central application server to perform these tasks in a synchronous fashion. If they were performed synchronously, the task could not be started on the 2nd system until it was completed on the 1st system, and it could not be started on the 3rd system until it was completed on the 2nd system, and so on.
Therefore, there is a need to solve the problem of keeping the end user interface up to date in a 3-tier application where the 2nd and 3rd tier, for example, communicate asynchronously.
SUMMARY OF THE INVENTION
It is, therefore, a principal object of this invention to provide a method for routing asynchronous state changes in a multi-processing environment.
It is another object of the invention to provide a method that solves the above mentioned problems so that an end user interface of an application can display the most up to date information.
These and other objects of the present invention are accomplished by the method disclosed herein.
According to an aspect of the invention, when a user action requires an operation to be performed in the network, a type of distributed service object is created on the central application server, and a proxy object is created on the PC where the end user requested the action. The distributed service object on the central application server knows the routing information to communicate with its proxy on the PC, and likewise, the proxy knows the routing information to the object on the central application server.
The distributed service object on the central application server will create some type of endpoint service object on each endpoint system that it needs to communicate with to accomplish the user's operation, and a proxy object is created on the central application server for every endpoint service object that was created. The endpoint service object knows the routing information necessary to communicate with its proxy on the central application server, and likewise, the proxy knows the routing information to the object on the endpoint system.
In both of the above cases, the proxy objects are interested in the service object that they are associated with. When those service objects change, they notify their proxy of the change, routing their messages using the routing information that they store about the location of their proxy.
This arrangement provides a notification path between a service object on an endpoint system (tier 3) and its proxy on the central application server (tier 2), and a notification path between a distributed service object on the central application server (tier 2) and its proxy on the PC (tier 1).
According to another aspect of the invention, two more levels of notification that are provided. In particular, a notification path between the endpoint's proxy object on the central application server and the distributed service object on the central application server, and between the distributed service object's proxy on the PC and the window in which the user is viewing the data.
According to another aspect of the invention, these other levels of notification are enabled by generalizing the concept of an owner of a service object proxy. The owner of the endpoint service object proxy on the central application server is registered to be the distributed service object on the central application server. The owner of the distributed service object proxy on the PC is registered to be the window ID of the window where the data is displayed.
According to another aspect of the invention, through these four levels of notification, a state change of data on an endpoint system is relayed to the end user interface on the PC.
According to another aspect of the invention, the endpoint service object detects the change in data (because it caused the change) and it notifies its proxy object on the central application server.
According to another aspect of the invention, the endpoint service object's proxy on the central server notifies its owner (the distributed service object on the central server) of the data change.
According to another aspect of the invention, the distributed service object on the central server notifies its proxy object on the PC of the data change.
According to another aspect of the invention, the distributed service object's proxy on the PC posts an event to its owner, e.g., a window or windows using window identification (ID).
These and other aspects of the invention will become apparent from the detailed description set forth below.


REFERENCES:
patent: 4972367 (1990-11-01), Burke
patent: 5220563 (1993-06-01), Grenot et al.
patent: 5819019 (1998-10-01), Nelson
patent: 5898834 (1999-04-01), Sharpe et al.
patent: 6018805 (2000-01-01), Ma et al.
patent: 6052722 (2000-04-01), Taghadoss
Branson, et al., U.S. Patent application Ser. No. 09/112,352, filed Jul. 9, 1998.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Mechanism for routing asynchronous state changes in a 3-tier... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Mechanism for routing asynchronous state changes in a 3-tier..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Mechanism for routing asynchronous state changes in a 3-tier... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2525810

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.