Point comparison
|
Session-free
|
Session-managed
|
AppServer operating mode
|
Supported by the state-free operating mode.
|
Supported by the state-aware, state-reset, and stateless operating modes.
|
AppServer application programming model
|
Every application service or Web service request is independent of every other request. No session context is maintained between the client and the AppServers involved in the requests.
The use of RUN PERSISTENT to instantiate remote persistent procedures is not recommended. Instead, use the SINGLE-RUN or SINGLETON option (supported for ABL clients only).
The use of connection-based interfaces (SubAppObjects and ProcObjects) is not recommended.
The use of connect and disconnect procedures in the AppServer configuration is not allowed.
|
Every application service or Web service request is associated with a single connected client and AppServer. Session context for that client can be maintained by the AppServer across client requests.
|
Compatibility with different ABL clients
|
Compatible with all ABL clients, including Web service clients supported by the WSA (or OpenEdge Adapter for Sonic ESB) and Internet clients supported by the AppServer Internet Adapter (AIA).
|
Compatible with all ABL clients, including Web service clients supported by the WSA (or OpenEdge Adapter for Sonic ESB) and Internet clients supported by the AppServer Internet Adapter (AIA).
|
Client connection model
|
The client application does not physically connect to or disconnect from an AppServer.
The client logically connects to an application service or Web service and simply sends requests to any available AppServer and handles the responses from wherever they are sent.
|
Before sending any other Web service request, the client application must first establish a physical connection to a single AppServer instance through an application service or Web service it wants to access.Once a physical connection is established, the AppServer can maintain session context for the client and application service, but for a Web service, both the Web service client and the Web service must maintain awareness of the physical connection using SOAP headers. The client developer must program the handling of these headers in the client application.
|
Communications between client and AppServer
|
Clients of the AppServer exchange messages transparently with any available AppServer resource using a pool of physical AppServer connections (connection pool) maintained by the WSA and OpenEdge Adapter for Sonic ESB for Web services and maintained by the client session for all other clients.
Thus, AppServer resources handle all client requests in parallel, depending on the resources available.
|
Each client of the Web service creates a separate and exclusive connection over which all messages are exchanged with a particular AppServer resource until the connection is terminated.Thus, the AppServer resource handles each client request in sequence, executing each request only after the previous request from the client has completed.
|