RadarURL
Skip to content
조회 수 183 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

전용서버(Dedicated Server) VS 공유서버(Multi Thread Server)
전용서버 모드는 지금까지 모든 SQL 기반의 애플리케이션에 대해 Oracle DB에 연결하는 가장 일반적인 방법으로 설정이 쉬우며 간단한 연결 방법을 제공 합니다. 반면 MTS는 어렵지는 않지만 부가적인 설정 단계가 필요한 방법으로 두 모드의 중요한 차이는 설정 단계에 있는 것이 아니라 동작 단계에 있는 것입니다.

전용서버 모드는 클라이언트 세션과 서버 프로세스가 일대일 관계가 있지만 MTS에서는 다대일 관계로 보시면 됩니다. 공유 서버는 공유 자원이고 전용 서버는 그렇지 않습니다. 공유 자원을 이용 할 때는 오랫동안 자원을 독점 하지 않도록 주의해야 합니다.

[전용서버]
- 사용자가 Database에 연결하면 Listener가 대기하고 있다가 사용자의 요청을 받아들인 후 해당 세션에 대한 정보를 PMON에게 알려주고 PMON은 해당 세션을 위한 개별적인 작업 영역 PGA를 할당한다.
- 그러므로 Dedicate Server 방식은 PMON의 상태에 절대적으로 종속되며, 특정 세션에 의해 PMON에 부하가 많이 발생한다면 해당 세션에만 문제가 발생하는 것이 아니라 전체 세션에까지 막대한 영향을 줄수있다.

init.ora
###########################################
# MTS
###########################################
dispatchers="(PROTOCOL=TCP)(SERVICE=service_name)(dispatchers=10)"
max_dispatchers=20
shared_servers = 10
max_shared_servers = 20

확인방법

select * from v$shared_server;
select * from v$circuit;

[공유서버]
- Tuxedo, Tmax 등의 미들웨어와 비슷한 구조로 사용자의 접속, 요청 작업을 처리하기 위한 프로세스가 기동하여 동시의 여러 사용자의 작업에 대한 관리를 하는 Process 구조를 가진다.

- MTS를 구동하면 Request Que와 Response Que, Shared Server가 기동되고, Listener와 Request Que와 Response Que, Shared Server사이에서 데이터 요청, 요청 데이터의 사용자 전달 등을 하기 위한 Dispatcher Process가 존재한다.

- MTS는 사용자가 연결을 요청하면 Listener가 대기하고 있다가 연결을 허용, 세션에 대한 정보를 여러 Dispatcher 중 하나의 Dispatcher에 이관 받아 처리하는 역할을 하며 연결 허용 후 사용자가 데이터를 요청하는 경우 Dispatcher는 Request Que에 해당 요청 내용을 저장하고 Shared Server는 Request Que를 Look Up하고 있다가 미처리된 작업이나 신규로 발생하는 작업을 확인하여 처리하고, 처리 후에는 요구되는 데이터를 Response Que에 저장하고, Dispatcher는 해당 Response Que에 요구 데이터의 저장이 확인되는 순간 바로 사용자에게 데이터를 Return 한다.

- Oracle은 Dedicated Server와 MTS를 동시에 구성하여 작업할 수 있다.(특정 사용자는 업무 Role별로 Dedicated Server로 접속을 유도하고 그 밖의 사용자는 MTS Server로 접속하게 할 수 있다.)

MTS의 동작을 예를 들어 보면 서버에는 두개의 공유서버(Shared Server)가 존재하고 세개의 클라이언트가 30초 동안 수행하는 프로세스를 구동 한다고 했을 때 두개의 클라이언트는 30초만에 응답을 받을 수 있지만 한 클라이언트는 60초를 기다려야 한다는 것이다.

즉 MTS의 경우 가능한 짧게 수행되는 트랜잭션을 대상으로 해야 한다는 것이죠… 그래서 MTS는 짧지만 자부 발생하는 트랜잭션을 가지는 OLTP 시스템에 적합하다고 할 수 있습니다. MTS의 장점은 다음과 같습니다.

1.운영체제의 프로세스/스레드 수를 감소 시킵니다.

2.동시성의 정도를 의도적으로 줄일 수 있습니다.(동시 사용자가 늘어 어느 시점에 이르면 시스템이 처리할 수 있는 트랜잭션의 한계에 이르며 최대 동시 접속을 이 지점 이전으로 제한 한다면 시스템의 최대 처리량을 유지 하면서 대부분의 사용자들에게 응답시간이 늘어 나는 것을 제한 할 수 있다는 이야깁니다.)

3.시스템에서 필요한 메모리를 줄입니다.(MTS를 이용하면 UGA는 SGA안에 존재 합니다. 이는 MTS 연결 모드에서는 먼저 예상되는 UGA의 메모리 량을 적절히 추축하고 LARGE_POOL을 통해 SGA안에서 적절히 할당을 하라는 의미 입니다.)
   
또한 데이터베이스에서 EJB를 사용하기로 했다면 반드시 MTS를 사용해야 합니다.

시스템이 과부하가 없으며 MTS를 사용할 이유가 없다면 전용 서버가 최선의 선택입니다. 전용 서버의 경우 설정이 간단하며 튜닝이 쉬운 장점이 있습니다. 전용 서버에서만 수행되는 연산이 있으므로 일반적으로 모든 데이터베이스는 양쪽 모드를 동시에 사용 하거나 전용 서버 모드만을 가집니다.

만약 상당히 많은 사용자를 가진 DB Application을 개발 한다면 반드시 MTS에서 개발하고 테스트를 해야 합니다. MTS에서 TEST를 하지 않았다면 애플리케이션 및 시스템 오류를 증가 시키게 됩니다.

구성방법

Init.ora 파일에 (SERVER = DEDICATED) 추가

ps -ef |grep ora로 확인하면 oracle<SID> (LOCAL=NO) 형태로 서버가 떠 있있으며 Dedicated Server 방식으로 운영을 시에는 서버 당 4M정도의 메모리가 필요하므로 커넥션 갯수에 따라 메모리 용량 계산을 해주어야 합니다.

 

출처 : http://www.oraclejavanew.kr/bbs/board.php?bo_table=LecOracle&wr_id=172

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
25 TEMP TABLESPACE 사용현황 조회하기 JAESOO 2017.06.14 178
24 오라클 DB sysdba 접속방법 JAESOO 2017.06.14 425
23 쿼리의 응답속도가 갑자기 느려지는 경우 JAESOO 2017.06.14 612
22 ORACLE TRACE 기능으로 인한 CONNECT 지연 문제(EPC_DISABLED) JAESOO 2017.06.14 141
» Oracle 전용서버(Dedicated Server) VS 공유서버(Multi Thread Server) JAESOO 2017.06.14 183
20 [전산실 이야기] Oracle RAC 구성을 결정 하다 - 준비하기 JAESOO 2017.02.06 93
19 오라클 RAC 구성과 HA 솔루션 비교 JAESOO 2017.02.06 353
18 [Oracle] Lock 확인 및 Lock 해제 JAESOO 2016.03.28 894
17 오라클 실행 (sqlplus /nolog) JAESOO 2014.10.23 2052
16 오라클(Oracle) 테이블 스페이스 자동 증가 JAESOO 2014.10.23 869
15 오라클 테이블스페이스 용량 늘리기 JAESOO 2014.10.23 1206
14 오라클(ORACLE) 테이블 스페이스 용량 늘리기 JAESOO 2014.10.23 2350
13 오라클 테이블에서 컬럼의 데이터 타입 수정 방법 JAESOO 2014.08.04 1589
12 Oracle Data Type의 종류? JAESOO 2014.08.04 590
11 Single DB Admin Level 1 - Oracle Log 확인 JAESOO 2014.07.21 1344
10 오라클 스케쥴러 사용법 및 개념 정리 JAESOO 2014.07.21 24481
9 Silent mode Oracle 11gr2 설치 - CentOS 5.5 x64, cloudn VM에서 JAESOO 2014.06.24 8560
8 오라클 업데이트, 딜리트 쿼리 (oracle update, delete query) JaeSoo 2014.04.18 1681
7 오라클(Oracle) 제품종류 및 라이센스 정책 (10g 기준) JaeSoo 2014.04.01 3067
6 오라클 db 백업-(exp) 명령 JaeSoo 2014.03.24 806
Board Pagination Prev 1 2 Next
/ 2

PageViews   Today : 284   Yesterday : 2,025   Total : 19,931,521  /  Counter Status   Today : 137   Yesterday : 690   Total : 1,458,838
Site Info   Member : 237  /  Total documents : 1,223   New documents : 0  /  Total comments : 24

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소