Consultor Eletrônico



Kbase P88279: Why is the level of context switching higher when using remote clients opposed to self service clien
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   22/04/2008
Status: Verified

GOAL:

Why is the level of context switching much higher when connecting a remote client verses a client connected through shared memory?

GOAL:

Why remote clients connections cause the level of context switching to increase?

GOAL:

Why is the level of context switching higher when using remote clients opposed to self service clients?

GOAL:

Why is a client-server C/S client slower than a shared-memory connection?

FACT(s) (Environment):

All Supported Operating Systems
Progress/OpenEdge Versions

FIX:

In the client-server environment you have two processes running. The client runs the 4GL code and makes requests of the server to access the database. The server gets the requests and sends back responses. So context switches are required as each of the two processes needs to use a processor to do its part of the work. While there can be some overlap, especially for no-lock queries, context switches must occur.

In addition, there will be more CPU consumption because in client-server, additional processing is needed to construct the messages sent over the TCP/IP connection, and the operating system's TCP/IP stack will also consume CPU time.

The client has to wait for the server to send responses back.

The extra overhead of the TCP/IP interface will make client-server run slower than self-serving in many cases.