사용자가 오라클 Application Program을 실행 시켰을 때 사용되는 프로세스 입니다. ex)SQL*Plus, Toad, Pro*C..
사용자가 오라클 서버에 접속할 때마다 사용자 프로세스가 생성됩니다.
사용자가 실행시킨 SQL문을 서버 프로세스에 전달하고, 그 결과를 서버 프로세스로부터 받는 역할을 수행 합니다.
Oracle은 서버프로세스를 생성하여 접속된 사용자 프로세스의 요구 사항을 처리합니다.
서버 프로세스는 사용자 프로세스와의 통신과 사용자 프로세스의 요구 사항을 수행하는 Oracle과의 상호 작용을 담당합니다.
Oracle은 서버 프로세스당 사용자 프로세스 수를 조정하도록 구성될 수 있습니다.
- 전용서버 구성에서 서버 프로세스는 단일 사용자 프로세스에 대한 요구 사항을 처리합니다.
- 공유서버 구성에서는 여러 개의 사용자 프로세스가 적은 수의 서버 프로세스를 공유하여 서버 프로세스 수를 최소화하는 동시에 사용 가능한 시스템 자원 활용도를 최대화 합니다.
오라클 서버 프로세스는 사용자로부터 받은 요구사항(SQL문)을 처리 합니다.
사용자가 SGA Database Buffer에 없는 데이터를 질의하면 관련 서버 프로세스는 데이터 파일로부터 해당 데이터 블록을 시스템 글로벌 영역으로 읽어 들입니다.
전달받은 SQL문을 Parse하고 실행 시키는 역할을 합니다.
Application이 정보를 처리할 수 있는 방법으로 결과를 돌려 줍니다.
Oracle에 접속된 모든 User Process는 상응하는 Dedicated Server Process를 가지므로 User Process와 Server Process가 1:1의 비율로 존재 합니다.
오라클 DB를 설치하면 기본적으로 전용 서버 프로세스 환경 입니다.
다수의 User Process가 매우 적은 수의 Server Process를 공유하는 것을 허용하는 방법입니다.
다수의 User Process는 Dispatcher Process에 접속을 하고, Dispatcher는 Client 요구를 사용 가능한 공유 Server Process에 Route 합니다.
Shared Server Processes를 사용하기 위해서는 별도의 환경설정이 필요하며, Shared Server 환경에서는 공유 서버와 전용 서버 프로세스를 동시에 사용 가능합니다.
Shared Server 설정의 장점은 System Overhead(memory와 process의 수)가 감소되어 지원 가능한 user의 수가 증가 합니다.
- 강좌 URL : http://www.gurubee.net/lecture/1891
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.