OSF DCE Application Development Guide--Core Components

Topics in RPC Application Development
Figure 16-7. Stages of Call Routing by a Server Process
A.
Server process
Call queue
Available
call thread
Call thread
1
call
Incoming
C.
(Server too busy)
Server process
available
call thread
No
call
Incoming
Rejected
call
1
10
6
5
4
3
2
9
8
7
capacity = 8
Call queue−−
−−Call thread
concurrent calls
maximum = 1
queue
full
Server process
B.
available
call thread
No
1
4
3
2
full
queue
NOT
Call queue
−−Call thread
concurrent calls
maximum = 1
call
Incoming
5
Server process
Call thread
Returned
arguments
1
2
Available
call thread
6
5
4
9
8
3
7
full
queue
NOT
call
12
Incoming
Call queue
D.
queue
empty
11
The activities of the four stages in the preceding figure are described as follows:
1. In stage A, call 1 arrives at a server that lacks any other calls. When the call
arrives, the queue is empty and a call thread is available. The server accepts the
call and immediately passes it to a call thread. The requested remote procedure
executes the call in that thread, which becomes temporarily unavailable.
2. In stage B, call 5 arrives. The call queue is partially full, so the server accepts the
call and adds it to the end of the queue.
3. In stage C, call 11 arrives. The queue is full, so the server rejects this call, as it
rejected the previous call, 10 . (The caller can try again with the same or a
different server.)
124245 Tandem Computers Incorporated 16 43