DCE Application Programming Guide
HP NonStop DCE Application Programming Guide—429551-003
2-1
2
Application Design Considerations
This section discusses:
•
Choosing a Server Model on page 2-1
•
RPC Considerations and Limits on page 2-2
•
Interprocess Communication With Non-DCE Programs on page 2-6
•
Programming Languages on page 2-8
•
Using a Fault-Tolerant Backing Store on page 2-9
Choosing a Server Model
When designing server applications for NonStop DCE, developers must use the 
standard multithreaded DCE server model from the OSF. This server model has 
advantages and disadvantages. Model for Structuring Applications provides an 
overview of this model. Additional guidance for the use of the standard multithreaded 
DCE server model is given in the volumes of the OSF DCE Application Development 
Guide.
NonStop DCE does not support the distributor-agent API. That distributor-agent 
extension is not provided in product version 1.1 of NonStop DCE.
Minor coding changes are required to migrate distributor-agent applications to the 
standard OSF DCE version 1.1 server API. If you have an existing distributor-agent 
application, convert your application to use the NonStop DCE 1.1 server initialization 
API. The server must be written so that it is started and managed by dced.
Model for Structuring Applications
When a client issues a RPC, the server run-time code calls the server stub associated 
with the requested operation. The stub, in turn, calls the application manager code that 
implements the remote operation. Both the stub and the application manager code are 
executed by a server call thread. Servers typically execute with multiple call threads. 
The number of call threads determines the maximum number of calls that can be 
executed concurrently. 
A single application can mix DCE and non-DCE components. It is likely that many 
NonStop DCE applications will be built on existing NonStop operating system 
applications, particularly on Pathway server classes.
Standard Multithreaded Server
NonStop DCE supports the standard multithreaded server model from OSF, in which 
the server executes as a single process with multiple threads. Typically, the server 
creates a new thread to process an incoming RPC, terminating the thread when the 
RPC finishes.










