Memory Architecture   «Prev 

Understanding Shared Server Architecture

The Oracle Database shared server architecture increases the scalability of applications and the number of clients that can simultaneously be connected to the database. The shared server architecture also enables existing applications to scale up without making any changes to the application itself.
When using a shared server[1] , clients do not communicate directly with a database server process, a database process that handles a client's requests on behalf of a database. Instead, client requests are routed to one or more dispatchers. The dispatchers place the client requests in a common queue. An idle shared server from the shared pool of server processes picks up and processes a request from the queue. This means a small pool of server processes can serve a large number of clients.
Figure 5-11.1 and 5-11.2 show the basic difference between
  1. the shared server connection model and
  2. the traditional dedicated server connection model.
In the shared server model, a dispatcher can support multiple client connections concurrently. In the dedicated server model, there is one server process for each client. Each time a connection request is received, a server process is started and dedicated to that connection until completed. This causes a processing delay.

Figure 5-11.1: Shared Server Architecture


Figure 5-11.2: Dedicated Server Architecture

[1]shared server: A database configuration that enables multiple client processes to share a small number of server processes.