Sunday, June 29, 2008

oracle listener and dispatcher and shared servers

  • the client contacts the Listener over the network
  • the Listener detects and incoming request and , based on Oracle Net configuration, determines that it's for a multithreaded server. Instead of handing the client off to a dedicated server, the Listener hands the client off to a dispatcher for the network protocol the client is using.
  • The Listner introduces the client and the dispatcher by letting each know the other's network address.
  • Once the client and the dispatcher know where to find each other, they communicate directly. The Listener is no longer required. The client sends each work request directly to the dispatcher.
  • The dispatcher places the client's request in the request queue in the SGA
  • The next available shared server process reads the request from the request queue and does the work.
  • The shared server places the results for the client's request in the response queue for the dispatcher that originally submitted the request.
  • The dispatcher reads the results from its queue.
  • The dispatcher sends the results to the client.

No comments: