Try OpenEdge Now
skip to main content
Developing AppServer Applications
Programming the AppServer : Programming for an AppServer session model : Session-free programming : Affecting application scalability
 
Affecting application scalability
If you instantiate a remote persistent procedure in a session-free application, any network resource that provides the bound connection for the client is unavailable for other clients until that remote persistent procedure is deleted (or released for an Open Client or Web service ProcObject). If enough clients simultaneously create and use instances of this persistent procedure, the application might have no more physical connections available in its connection pool to serve additional clients.
Thus, if all clients that use the application service are always required to create an instance of this remote persistent procedure, the application service is scalable only for the number of clients that can simultaneously create that remote persistent procedure. Even if clients are not required to create this persistent procedure for all uses of the application service, any clients that do so reduce the availability of network resources to other clients and limit the scalability of the application service accordingly.
Thus, to allow a session-free application service to scale fully for the network resources available, do not allow any clients to instantiate remote persistent procedures. For Open Client and Web service applications, you can do this by not defining any ProcObjects in the Open Client interface.