전용 서버 vs 공유 서버
전용서버 모드는 지금까지 모든 SQL 기반의 애플리케이션에 대해 Oracle DB에 연결하는 가장 일반적인 방법으로 설정이 쉬우며 간단한 연결 방법을 제공 합니다. 반면 MTS는 어렵지는 않지만 부가적인 설정 단계가 필요한 방법으로 두 모드의 중요한 차이는 설정 단계에 있는 것이 아니라 동작 단계에 있는 것입니다.
전용서버 모드는 클라이언트 세션과 서버 프로세스가 일대일 관계가 있지만 MTS에서는 다대일 관계로 보시면 됩니다. 공유 서버는 공유 자원이고 전용 서버는 그렇지 않습니다. 공유 자원을 이용 할 때는 오랫동안 자원을 독점 하지 않도록 주의해야 합니다.
MTS의 동작을 예를 들어 보면 서버에는 두개의 공유서버가 존재하고 세개의 클라이언트가 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를 하지 않았다면 애플리케이션 및 시스템 오류를 증가 시키게 됩니다.
전용서버 모드는 지금까지 모든 SQL 기반의 애플리케이션에 대해 Oracle DB에 연결하는 가장 일반적인 방법으로 설정이 쉬우며 간단한 연결 방법을 제공 합니다. 반면 MTS는 어렵지는 않지만 부가적인 설정 단계가 필요한 방법으로 두 모드의 중요한 차이는 설정 단계에 있는 것이 아니라 동작 단계에 있는 것입니다.
전용서버 모드는 클라이언트 세션과 서버 프로세스가 일대일 관계가 있지만 MTS에서는 다대일 관계로 보시면 됩니다. 공유 서버는 공유 자원이고 전용 서버는 그렇지 않습니다. 공유 자원을 이용 할 때는 오랫동안 자원을 독점 하지 않도록 주의해야 합니다.
MTS의 동작을 예를 들어 보면 서버에는 두개의 공유서버가 존재하고 세개의 클라이언트가 30초 동안 수행하는 프로세스를 구동 한다고 했을 때 두개의 클라이언트는 30초만에 응답을 받을 수 있지만 한 클라이언트는 60초를 기다려야 한다는 것입니다.
즉 MTS의 경우 가능한 짧게 수행되는 트랜잭션을 대상으로 해야 한다는 것이죠… 그래서 MTS는 짧지만 자부 발생하는 트랜잭션을 가지는 OLTP 시스템에 적합하다고 할 수 있습니다. MTS의 장점은 다음과 같습니다.
1.운영체제의 프로세스/스레드 수를 감소 시킵니다.
구로디지털단지역 오엔제이프로그래밍 실무학원
(Java , Oracle, SQL, Oracle Tuning, BackUP& Recovery, ASP.NET,
C#, C#Network ,채용확정
무상교육)
2.동시성의 정도를 의도적으로 줄일 수 있습니다.(동시 사용자가 늘어 어느 시점에 이르면 시스템이 처리할 수 있는 트랜잭션의 한계에 이르며 최대 동시 접속을 이 지점 이전으로 제한 한다면 시스템의 최대 처리량을 유지 하면서 대부분의 사용자들에게 응답시간이 늘어 나는 것을 제한 할 수 있다는 이야깁니다.)
3.시스템에서 필요한 메모리를 줄입니다.(MTS를 이용하면 UGA는 SGA안에 존재 합니다. 이는 MTS 연결 모드에서는 먼저 예상되는 UGA의 메모리 량을 적절히 추축하고 LARGE_POOL을 통해 SGA안에서 적절히 할당을 하라는 의미 입니다.)
또한 데이터베이스에서 EJB를 사용하기로 했다면 반드시 MTS를 사용해야 합니다.
시스템이 과부하가 없으며 MTS를 사용할 이유가 없다면 전용 서버가 최선의 선택입니다. 전용 서버의 경우 설정이 간단하며 튜닝이 쉬운 장점이 있습니다. 전용 서버에서만 수행되는 연산이 있으므로 일반적으로 모든 데이터베이스는 양쪽 모드를 동시에 사용 하거나 전용 서버 모드만을 가집니다.
만약 상당히 많은 사용자를 가진 DB Application을 개발 한다면 반드시 MTS에서 개발하고 테스트를 해야 합니다. MTS에서 TEST를 하지 않았다면 애플리케이션 및 시스템 오류를 증가 시키게 됩니다.
댓글 없음:
댓글 쓰기