CN1350673A - Method for transmitting, inside a distributed system, messages between a client instance assigned to a first process and at least one server instance assigned to at least one additional process - Google Patents

Method for transmitting, inside a distributed system, messages between a client instance assigned to a first process and at least one server instance assigned to at least one additional process Download PDF

Info

Publication number
CN1350673A
CN1350673A CN 00807384 CN00807384A CN1350673A CN 1350673 A CN1350673 A CN 1350673A CN 00807384 CN00807384 CN 00807384 CN 00807384 A CN00807384 A CN 00807384A CN 1350673 A CN1350673 A CN 1350673A
Authority
CN
China
Prior art keywords
instance
server
client
information
another
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN 00807384
Other languages
Chinese (zh)
Inventor
M·瓦格纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of CN1350673A publication Critical patent/CN1350673A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]

Abstract

After receiving a message sent by the client instance (Client) to at least one server instance (Server), a first instance (Object Handler 1) which contains a first process and which is of partner instances provided as mutual communications partners selects at least one appropriate additional instance (Object Handler 2), said additional instance containing the at least one additional process, of the partner instances in order to accept and relay messages. The at least one additional instance containing the at least one additional process relays this message to at least one server instance addressed by the same and optionally receives, from the at least one server instance, a message for relaying to the client instance via the first instance that contains the first process.

Description

In distributed system at the client instance of distributing to first process with distribute to method of transmitting information between at least one server instance of another process at least
The present invention relates to a kind of in distributed system at the client instance of distributing to first process with distribute to method of transmitting information between at least one server instance of another process at least.
Distributed system has special meaning in the telecommunication system that nowadays is generally multicomputer system.The feature of distributed system especially is, always can give different processors course allocation, and in case of necessity, these processors can be positioned in distributed system on the platform that the part separates.At this, for the communication between the different processes of distributed system, the most important is exactly the platform transparency.That is to say, plan to know the process that information sends to another process the platform at described another process place of moving.Nowadays this complicated distributed system also must satisfy many other requirements.In addition, it must show and can very reliably, as far as possible flexibly and openly be used for mating and expansion.Therefore, the software of this complex distributions formula system should utilize the open interface of fixed definitions outwards to design high modularization, so that can mate and reuse each module of this software easily.
In order especially can suitably to satisfy the repeated use requirement of above-mentioned software, can work out the software of this distributed system by Object Oriented method and Object oriented programming.But in distributed system, each object is to be assigned to difference mostly and is the process of moving simultaneously sometimes, and the distribution each other of these objects can not be resolved satisfactorily.Sometimes, in the process type programming technique of routine even must interrupt pure object-oriented systems design, therefore lost the effect of utilizing the repeated use program part that object-oriented realizes more or less.
Now in world of object, introducing the known means that operation simultaneously and parallel processing are discussed below:
Operation in the time of implicit expression: have two kinds of possibilities when when realizing implicit expression, moving:
-passive object: nonsynchronous message exchange is converted to a kind of order and the synchronous method call or the invocation of procedure.At this, the parallel processing of the object that communicates with one another is very limited.
-active objects: for each object starts a process.This method can cause higher resource consumption, therefore can only utilize the object of limited quantity to realize.
Operation in the time of explicit: at this, one group object (relevant with object) or a flow process sequence (relevant with task) are distributed to a process, wherein the former is once at A.Coutts, the paper of J.M.Edwards " distributed system of model-driven ", the IEEE concurrency, in July, 1997, explanation was arranged in the 55-63 page or leaf, the latter is then at M.Awad, the paper of J.Ziegler " practical methods of design concurrency in object-oriented systems ", software practice and experience, 1997.9, volume 27 (9) was set forth among the page or leaf 1013-1034.Fig. 5 in right half part by Fig. 3 in the paper of studying above-mentioned Awad/Ziegler and the paper of above-mentioned Coutts/Edwards, from interface between each object, that partly show as the interface between each process simultaneously as can be seen, communication between each object both can be passed through synchronous method call, also can realize with asynchronous information forwarding form by interprocess communication.Stipulating that at the object interface place this communication mode has individual shortcoming, is exactly to have increased the difficulty of reusing and safeguard described object widely.
Especially when the different objects of distributed system-also be known as example-between when communicating, these objects all have a kind of so-called client/server relation each other usually, and be assigned to different processes, so with regard to reusability required in this complication system and maintainability, above-mentioned scheme is a kind of very disadvantageous solution.
Therefore task of the present invention is, in distributed system the design a kind of between the client instance of distributing to described different processes and server instance method of transmitting information, making can provide high as far as possible reusability when this method of execution, and has simplified described maintainability simultaneously as much as possible.
This task is solved by the given characteristic of claim 1.Each dependent claims has provided the feature of other expansion scheme of the present invention.
According to the present invention, this is realized by following mode, that is: in distributed system, for at the client instance of distributing to first process with distribute to transmission information between at least one server instance of another process at least, also used some to be set as communication partner's partner instance in addition.Receiving one after described client instance points to the information of at least one server instance, first example that comprises described first process in the described partner instance selects from described partner instance that at least one is suitable, comprise another example of another process at least, so that carry out message pick-up and forwarding.Describedly comprise at least that another example of another process sends described information at least one server instance by its addressing to, and obtain an information from described at least one server instance where necessary, so that send this information to described client instance by described first example that comprises first process.
Utilize this method, communication mode between client instance and at least one server instance regulation just has been transferred to and describedly comprises a process and be set as in communication partner's the partner instance.Like this, described information is just synchronously for example by the invocation of procedure or method call and at client instance with comprise and transmit between first example of described first process, and at described at least one server instance with describedly comprise transmitting between another example at least of another process at least.So, can carry out decoupling with the communication interface of described client instance and at least one server instance synchronously or asynchronously in the described information transmission that comprises first example of first process and comprise between another example of another process at least.Advantageously implementing to have realized maximum reusability aspect described client instance and at least one server instance thus.Equally, because must be to mating in the described communication interface that comprises first example of first process and comprise between another example of another process at least, but can not touch the communication interface of described client instance and at least one server instance, so improved described maintainability widely yet.
Another expansion scheme regulation of the present invention, described first example that comprises first process is selected described another example of another process at least that comprises by an allocation table.In this allocation table typing the kind and the described address of another example of another process at least that comprises of the described client instance information that can send.Allocation table has individual advantage, is exactly can change its content at any time, and can selects described first example that comprises first process apace.
According to a kind of favourable improvement project of the present invention, can be dynamically change the selection that first example that described utilization comprises first process is carried out according to described system loading.Can avoid when described course allocation is arrived each processor, producing thrashing and obstruction thus.
Another expansion scheme of the present invention relates to following special circumstances, and promptly described first process and described another process at least match.In this case, the synthetic example of first example that comprises described first process and another example set that comprises described another process at least.Need not thus just to mate and to apply the present invention to these special circumstances.
Another favourable expansion scheme of the present invention is to be the mode implemented.So, all examples (client instance, server instance, the example that comprises first process and partner instance, or the like) can realize that with the form of object its structure is determined by object class.Like this, described first example that comprises first process and comprise the structure that another example of another process at least always advantageously has public object class.Utilize pure Object oriented programming principle by this method, can realize the higher degree of modularity, higher reusability and maintainability thus.
Another expansion scheme of the present invention is to be method of the present invention advantageously is applied in the telephone switching system.So the telephone number exchange system also can obtain above-mentioned all advantages.
Elaborate embodiments of the invention below with reference to accompanying drawing.Among the figure:
Fig. 1 shows the example flow diagram of the inventive method,
Fig. 2 shows the embodiment that is applied to the ALM field in such as telecommunication systems such as telephone switching systems.
The marginal data of accompanying drawing is seen the appendix that this instructions is last.
Fig. 1 shows at the client instance of distributing to first process with process flow diagram and distributes to information transmission between the server instance of another process.Described client instance and server instance, also promptly comprise first example of described first process and comprise another example of another process at least, and be with shown in the object form that has little frame by some actions that described server instance is carried out.So, object " client " is corresponding to client instance, object " server " is corresponding to server instance, object " object handling program 1 " is corresponding to the first active example partner instance that is set as the communication partner, that comprise described first process, object " object handling program 2 " is corresponding to another active example that comprises described another process of described partner instance, object " action " is corresponding to an action, and object " is confirmed action " corresponding to one at replying that the action of being asked is carried out.At this, the active example that comprises corresponding process indicates by bold box.Only when calling special object action, just determine the mode of described action.
When client requests by server carry out have the action of replying the time, for example move following method:
The client will produce one according to this action and reply to action of server requests.Call this action by the client, there is no the notice road and should carry out which process or on which processor platform, carry out this action.Object handling program 1 provides described invoked procedure " to call _ move " to the client for this reason." call _ move "-in Object oriented programming, be also referred to as method-afterwards calling described process, distribute number (obtain to handle number) of a univocality for described object handling program 1, start timer (startup timer) then, do not having to trigger a kind of fault handling by this timer under the situation that in time input is replied.After this, seek a partner instance such as an object handling program 2 (seeking the destination object handling procedure) that is set as the communication partner by described object handling program 1, wherein said object handling program 2 is assigned to described action according to the mode of action, by object handling program 1 information of action request " action _ request " is sent to described object handling program 2 then.Receive this information by object handling program 2, and with its communication partner, also be object handling program 1 the address and described give that object handling program 1 univocality distributes number store (storing communication co-worker) together, carry out the process (execution) of described object action then.Subsequently, this object action will impel described server by client's addressing to go to move by the invocation of procedure to carry out described action.After executing described action, described server sends back to the client replying indirectly with similar method.Leading to the operation ensuing invocation of procedure, information transmission and action on client's the direction by server then.The invocation of procedure " is called _ move " address of removing described communication partner, and an action request information " action _ request " that is used to reply is transferred to object handling program 1 from object handling program 2, this object handling program 1 is number known by object handling program 2 because of it distributed, remove this number of being distributed (discharge processing number) and stop timer (stopping timer) by object handling program 1, in order to transmit described replying, object handling program 1 calls described process and " carries out object and confirm action ", carries out " affirmation _ action " process of client by " object is confirmed action " at last.
When the client requests server not with the action of replying the time, the information transferring method from client to the server that the present invention moved is with above similar.Operating procedures such as cancellation " handle number ", " startup timer ", " storing communication co-worker " with from server to the customer to the relevant step of replying.
Under so-called broadcasting situation, that is to say that a client to action of a plurality of server requests, so just has different possibilities:
If-be assigned to a public process by the server of client's addressing, then object handling program 1 can send described " action _ request " information to object handling program 2, and be responsible for allowing a plurality of servers carry out this action by this object handling program 2, perhaps, object handling program 1 also can send to a plurality of object handling programs 2 that comprise server processes to a plurality of " action _ request " information, and impels described server to go to carry out described action respectively by these object handling programs 2.Also can get up described two kinds of scheme combination.
If-be assigned to different processes by the server of client's addressing, object handling program 1 will send " action _ request " information to the object handling program 2 that comprises described different processes respectively so, and always impel described server to carry out described action by described object handling program 2.
At this, also can conceive above-mentioned possibility is all combined.
Usually need to carry out a plurality of actions in a distributed system, like this, each server obviously also can act as the client, and each client also can act as server, and client's function and server capability can be combined into an object.
From the described as can be seen process interface in following aspect with the favourable decoupling between the object interface of client and server: communicating by letter between client and the server synchronously realizes by the invocation of procedure or method call, in case of necessity, have only the information forwarding between object handling program 1 and the object handling program 2 just to cross processing border and realization asynchronously.
In particular cases following, promptly the client who for example is positioned on the common platform may be assigned to identical process with server, and like this, described object " object handling program 1 " and " object handling program 2 " just are combined into an independent object.As shown in Figure 1, object handling program 1 is that described " action _ request " information is sent to it oneself in this case.
Fig. 2 shows the embodiment that is applied to the ALM field in such as telecommunication systems such as telephone switching systems.
For example have the following object in ALM, they act as client and server simultaneously, and ask different actions mutually.In addition, these objects can be positioned on the different platforms.
Object " alarm balance monitoring device " task (ABM) is, produces alarm balances at all alarms by the alarm example (AMOI) of its supervision.In order to produce this alarm balance, described alarm balance monitoring device needs at least one so-called SIBS object, and this SIBS object is positioned on the processor platform, and an Information Monitoring about the alarm example that is monitored is provided for described monitor.
In little frame, show object " calling program ", AMOI (alarm management object instance), SIBS (field balancing supply) and ABM (alarm balance monitoring device).The arrow that utilizes legend in the appendix not list its type is represented to cross the process restriction sometimes and the information transmission of carrying out between described object.At this, described information transmission is corresponding to the information transmission between client and server shown in Figure 1.So described " calling program " object for example can act as the client, and described AMOI object can act as server.This also correspondingly is applicable to remaining object AMOI and SIBS and SIBS and ABM.
Call " setting _ alarm " afterwards at ALM, for example trigger following course of action:
-setting _ alarm: the alarm example AMOI that is monitored obtains a new alarm from caller " calling program " there, and checks those parameters of determining described alarm (check _ parameter), sets up a new alarm example (setting up the alarm that is comprised) then.
-confirm: call " setting _ alarm " at ALM and reply to one of calling program example transmission from the AMOI example afterwards.
-balance SIBS: ask at least one server object SIBS so that gather obtained, for carrying out the required information of described alarm balance (gathering the alarm status of all relevant AMOI).
-balance ABM: ask described server object ABM then, so that for alarming the information (gathering the alarm status of all relevant SIBS) that the balance collection is obtained by described at least one SIBS object.
Because described action is crossed processing border and is asked, so give another object described information from an object transfer, such as object handling program 1 and object handling program 2 among the Fig. 1 that does not illustrate by Fig. 2 by initiatively first example and another example initiatively.
Described object handling program 1 can be selected described object handling program 2 by an allocation table.This allocation table is for example as follows:
Action Object handling program Reply
Setting _ alarm AMOI On the AMOI platform Be
Balance SIBS On the SIBS platform Not
Balance ABM On main platform Not
In case can carry out a certain action by different server objects, then can change the distribution of described object handling program 2 according to described system loading.The legend of appendix accompanying drawing:
Figure A0080738400101

Claims (6)

  1. In distributed system at the client instance of distributing to first process (client) with distribute to method of transmitting information between at least one server instance (server) of another process at least, wherein, receiving one after described client instance points to the information of at least one server instance, come from described partner instance, to select that at least one is suitable by that first example (object handling program 1) that comprises described first process in the partner instance that is set as the communication partner, comprise another example of another process (object handling program 2) at least, so that carry out message pick-up and forwarding, described another example sends described information at least one server instance by its addressing, and obtain an information from described at least one server instance where necessary, so that send this information to described client instance by described first example that comprises first process.
  2. 2. the method for claim 1 is characterized in that:
    Described first example that comprises first process is selected described another example of another process at least that comprises by an allocation table, and described allocation table is meant the distribution between the roughly the same described address that comprises another example of another process at least of the kind of the information that described client instance can send.
  3. 3. method as claimed in claim 2 is characterized in that:
    Can dynamically change the selection of being undertaken by first example that comprises first process according to described system loading.
  4. 4. the method according to any one of the preceding claims is characterized in that:
    If described first process and described another process at least match, then the synthetic example of first example that comprises described first process and another example set that comprises described another process at least.
  5. 5. the method according to any one of the preceding claims is characterized in that:
    All examples realize that with the form of object its structure is determined by object class.
  6. 6. the method according to any one of the preceding claims is characterized in that:
    It is applied in the telephone switching system.
CN 00807384 1999-03-09 2000-03-01 Method for transmitting, inside a distributed system, messages between a client instance assigned to a first process and at least one server instance assigned to at least one additional process Pending CN1350673A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19910345.3 1999-03-09
DE1999110345 DE19910345A1 (en) 1999-03-09 1999-03-09 Method for transmitting messages between a client instance assigned to a first process and at least one server instance assigned to at least one further process within a distributed system

Publications (1)

Publication Number Publication Date
CN1350673A true CN1350673A (en) 2002-05-22

Family

ID=7900257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 00807384 Pending CN1350673A (en) 1999-03-09 2000-03-01 Method for transmitting, inside a distributed system, messages between a client instance assigned to a first process and at least one server instance assigned to at least one additional process

Country Status (3)

Country Link
CN (1) CN1350673A (en)
DE (2) DE19910345A1 (en)
WO (1) WO2000054150A2 (en)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5377350A (en) * 1993-04-30 1994-12-27 International Business Machines Corporation System for cooperative communication between local object managers to provide verification for the performance of remote calls by object messages
US5802367A (en) * 1995-07-07 1998-09-01 Microsoft Corporation Method and system for transparently executing code using a surrogate process
GB2305270A (en) * 1995-09-15 1997-04-02 Ibm Bridge for a client-server environment
US6347342B1 (en) * 1996-07-15 2002-02-12 Next Software, Inc. Method and apparatus for dynamically brokering object messages among object models
CA2213213A1 (en) * 1996-08-26 1998-02-26 Tandem Computers Incorporated Method and apparatus for performing efficient corba transactions
JPH10232780A (en) * 1997-02-19 1998-09-02 Hitachi Ltd Transforming method for interface definition description and inter-object communication method
US6446204B1 (en) * 1997-10-31 2002-09-03 Oracle Corporation Method and apparatus for implementing an extensible authentication mechanism in a web application server

Also Published As

Publication number Publication date
WO2000054150A2 (en) 2000-09-14
WO2000054150A3 (en) 2001-04-05
DE19910345A1 (en) 2000-09-21
DE10080578D2 (en) 2002-03-07
WO2000054150A9 (en) 2001-09-20

Similar Documents

Publication Publication Date Title
US5551035A (en) Method and apparatus for inter-object communication in an object-oriented program controlled system
CN1099784C (en) Method and arrangement for process based message handling in communication system
CN101242392B (en) Method, device and system for processing series service message
Almeida et al. Transparent dynamic reconfiguration for CORBA
US8032780B2 (en) Virtualization based high availability cluster system and method for managing failure in virtualization based high availability cluster system
US20020064267A1 (en) Telecommunications portal capable of interpreting messages from an external device
JPH08511889A (en) Extended inter-program communication server
US20030158883A1 (en) Message processing
JP3888827B2 (en) Program replacement system, distributed processing system, and program replacement method
EP0405829B1 (en) Object oriented software system architecture
CN111124640A (en) Task allocation method and system, storage medium and electronic device
CN113691611A (en) Block chain distributed high-concurrency transaction processing method, system, equipment and storage medium
CN106385330A (en) Network function virtualization composer realization method and device
CN112433830A (en) ZooKeeper-based distributed task scheduling method, system and storage medium
CN1350673A (en) Method for transmitting, inside a distributed system, messages between a client instance assigned to a first process and at least one server instance assigned to at least one additional process
US6823524B1 (en) System and method for managing the distribution of events in a data processing system
EP1161843B1 (en) Providing supplementary services by executing a supplementary services layer ssl application in a switching node of an expandable telecommunications system
CN1143590C (en) Call and connection control
WO1993018464A1 (en) Distributed processing system
EP0884679B1 (en) Method of handling interactions between data processes
KR100442599B1 (en) Message handling apparatus and method in exchange system using distributed objects of workstation
CN117950839A (en) Task processing method and device based on intelligent task allocation and execution
CN113805879A (en) Application program running method, device and system
CA2357440C (en) Load shared architecture for an ss7 node
CN117891576A (en) Task scheduling method and device, electronic equipment and readable storage medium

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication