반응형

/*
-- Title : [ORA12c] Dedicated Server vs. Shared Server
*/


■ Dedicated Server(전용 서버) 구성

각 사용자 연결에 대해 전용 서버 프로세스를 할당. 이 프로세스는 사용자의 요청을 처리하고 데이터베이스와 상호 작용하며, 연결이 종료될 때까지 사용자에게 전용으로 사용.

  • 전용서버 모드는 이름에서 알 수 있듯이, 데이터베이스에 연결하는 각각의 사용자 프로세스에 전용 서버 프로세스를 할당하는 방식.
  • 이 방식은 오라클 데이터베이스를 설치할 때 기본으로 선택되는 방식이며, 대부분의 데이터베이스 운영자들이 이용하는 방식.
  • 전용 서버는 사용자 프로세와 서버 프로세스 간의 일대일 매핑을 이용하지만, 공유 서버는 다대일 관계를 이용.

ㅁ 장점

  • 예측 가능한 성능: 각 사용자는 전용 프로세스를 사용하므로 성능이 예측 가능하고 일관.
  • 높은 우선순위 작업 처리: 전용 프로세스는 중요한 작업에 우선순위를 지정하고 리소스를 할당하는 데 유용.
  • 높은 보안: 전용 프로세스는 다른 사용자 연결의 영향을 받지 않으므로 보안성이 향상.

ㅁ 단점

  • 높은 비용: 전용 서버는 더 많은 하드웨어 리소스를 필요로 하므로 비용이 더 높음.
  • 낮은 리소스 활용: 사용자가 없는 경우에도 전용 프로세스는 계속 실행되어 리소스를 사용.
  • 관리 복잡성: 전용 서버는 공유 서버보다 관리가 더 복잡.

ㅁ 사례

  • OLTP 시스템 (온라인 트랜잭션 처리)
  • 재무 시스템
  • 의료 시스템
  • 데이터베이스 관리
  • 백업 및 리커버리 작업
  • 일괄 처리 및 대량 로드 작업
  • 데이터웨어하우스 작업


■ Shared Server(공유 서버)

공유 서버 프로세스 풀(Large Pool?)을 사용하여 여러 사용자 연결을 처리. 연결 요청이 도착하면 사용 가능한 공유 서버 프로세스 중 하나에 할당. 이러한 프로세스는 여러 사용자 연결을 처리할 수 있지만, 각 연결은 프로세스를 다른 사용자 연결과 공유.

  • 공유 서버 모드에서는 발송자(dispatcher)라 불리는 부가적인 컴포넌트가 사용자 프로세스를 서버 프로세스로 안내하는 역할을 맡음.
  • 사용자 프로세스가 공유 서버로의 접속을 요청하면, 오라클 넷 서비스는 세션 요청을 서버 프로세스가 아닌 발송자로 연결.
  • 이어 발송자는 이 요청을 요청 대기열(Request Queue)로 보내며, 첫번째 Idle(휴식) 공유 서버가 대기열의 요청을 수신.
  • 생성된 결과는 다시 응답 대기열(response Queue)로 보내지며, 발송자는 이를 모니터링하며 적절한 시점에 클라이언트로 리턴.

ㅁ 장점

  • 낮은 비용: 공유 서버는 적은 하드웨어 리소스로 더 많은 사용자 연결을 처리할 수 있으므로 비용이 저렴.
  • 높은 리소스 활용: 공유 서버 프로세스는 여러 사용자 연결에 의해 공유되므로 리소스 활용도가 높음.
  • 간편한 관리: 공유 서버는 전용 서버보다 관리가 더 간편.

ㅁ 단점

  • 예측 불가능한 성능: 여러 사용자가 프로세스를 공유하기 때문에 성능이 예측 불가능하고 일관되지 않을 수 있음.
  • 낮은 우선순위 작업 처리: 공유 서버 프로세스는 중요한 작업에 우선순위를 지정하고 리소스를 할당하는 데 어려움이 있을 수 있음.
  • 낮은 보안: 공유 서버 프로세스는 다른 사용자 연결의 영향을 받을 수 있으므로 보안성이 낮.

ㅁ 사례

  • 웹 애플리케이션
  • 데이터 웨어하우스
  • 개발 및 테스트 환경

 


※ References:

 

 

반응형

+ Recent posts