Consultor Eletrônico



Kbase P70201: What are the Characteristic Trade-offs for the different Operating Modes of the AppServer?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   15/10/2008
Status: Verified

GOAL:

What are the Characteristic Trade-offs for the different Operating Modes of the AppServer?

FIX:

The three modes for AppServer operation are listed below along with the Operating Characteristics for each.

State-Reset

Design Complexity:

Easiest to program. AppServer session context automatically reset at the end of each connection.

Resource Consumption:

One client per Application Server process.

Request Throughput (requests/second):

Might be limited where computing resources are limited because the number of clients that can be concurrently serviced is limited to the number of server processes.

Average Response Time (seconds/request):

Fast response time where computing resources are not limited. The client communicates directly with a dedicated Application Server process.

State-aware:

Design Complexity:

Appropriate AppServer session context must be reset manually, typically in the Disconnect procedure. Tends to be complex if context is complex.

Resource Consumption:

One client per Application Server process.

Request Throughput (requests/second):

Might perform better than state-reset where reusable context can be established in the Startup procedure and then reused for each connection. Assumes minimal context needs to be reset after each connection.

Average Response Time (seconds/request):

Might perform better than state-reset where reusable context can be established in the Startup procedure and then reused for each connection. Assumes minimal context needs to be reset after each connection.

Stateless:

Design Complexity:

Appropriate AppServer session context must be established and managed for each request using the Activate procedure, then reset using the Deactivate procedure. Tends to be extremely complex if context is complex.

Resource Consumption:

Many clients per Application Server process(unbound); One client per Application Server process (bound).

Request Throughput (requests/second):

Maximum throughput under heavy client load where computing resources are limited and requests are short. Assumes minimal use of bound connections. Bound connections of long duration can significantly limit throughput. Even when connections are unbound, large complex connection context can also limit throughput.

Average Response Time (seconds/request):

Where the client load is minimal and computing resources are not limited, does not perform as well as state-aware or state-reset because two IPC messages are required per request. Bound connections of long duration can significantly limit response time. Even when connections are unbound, large complex connection context can also limit response time.


FIX:

References to Written Documentation:

Building Distributed Applications Using the Progress AppServer, Chapter 6 Design and Implementation Considerations Table 6-1: Characteristic Operating Mode Trade-offs.