원장 차세대 필요성 검토

Similar documents
PCServerMgmt7

歯sql_tuning2

The Self-Managing Database : Automatic Health Monitoring and Alerting

1217 WebTrafMon II

<49534F C0CEC1F520BBE7C8C4BDC9BBE720C4C1BCB3C6C320B9D D20BDC3BDBAC5DB20B0EDB5B5C8AD20C1A6BEC8BFE4C3BBBCAD2E687770>

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

Ç¥Áö

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

PowerPoint 프레젠테이션

목 차

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

untitled


ETL_project_best_practice1.ppt

MS-SQL SERVER 대비 기능

Intra_DW_Ch4.PDF

MaxGauge( 맥스게이지 ) 를이용한 SQL 모니터링, 진단 / 분석및튜닝가이드 엑셈

Oracle Database 10g: Self-Managing Database DB TSC

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER

PowerPoint

untitled

Model Investor MANDO Portal Site People Customer BIS Supplier C R M PLM ERP MES HRIS S C M KMS Web -Based

Commit_Wait / Commit_Logging 두파라미터를통해 Log File Sync 대기시간을감소시킬수있다는것은놀라움과의아함을동시에느낄수있다. 단지파라미터의수정을통해당연히대기해야하는시간을감축한다는것은분명성능을개선해야하는입장에서는놀라운일이될것이다. 반면, 그에따

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_ pptx

DW 개요.PDF

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

13주-14주proc.PDF

(......).hwp

Portal_9iAS.ppt [읽기 전용]

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

Jerry Held

슬라이드 1

ecorp-프로젝트제안서작성실무(양식3)

기타자료.PDF

62

요약 1

untitled

대량의 DML 작업에대한성능개선방안 엑셈컨설팅본부 /DB 컨설팅팀박준연 개요 대량의데이터를변경해야하는작업은그자체만으로도큰부담으로다가온다. 하지만변경작업자체에만국한되는것이아니라변경되기전데이터와변경이후데이터를각각저장관리해야하는메커니즘이라면성능을개선해야하는입장에서는더욱큰부담

공개 SW 기술지원센터

歯부장

untitled

untitled

단계

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

<목 차 > 제 1장 일반사항 4 I.사업의 개요 4 1.사업명 4 2.사업의 목적 4 3.입찰 방식 4 4.입찰 참가 자격 4 5.사업 및 계약 기간 5 6.추진 일정 6 7.사업 범위 및 내용 6 II.사업시행 주요 요건 8 1.사업시행 조건 8 2.계약보증 9 3

J2EE & Web Services iSeminar

thesis-shk

Analyst Briefing

PowerPoint Presentation

당사의 명칭은 "주식회사 다우기술"로 표기하며 영문으로는 "Daou Tech Inc." 로 표기합니다. 또한, 약식으로는 "(주)다우기술"로 표기합니다. 나. 설립일자 및 존속기간 당사는 1986년 1월 9일 설립되었으며, 1997년 8월 27일 유가증권시장에 상장되

PowerPoint Presentation

DBMS & SQL Server Installation Database Laboratory

Intro to Servlet, EJB, JSP, WS


PowerPoint 프레젠테이션

Oracle9i Real Application Clusters

Cache_cny.ppt [읽기 전용]

ODS-FM1

I. - II. DW ETT Best Practice

untitled

PRO1_04E [읽기 전용]

Microsoft Word _whitepaper_latency_throughput_v1.0.1_for_

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

Backup Exec

NoSQL

Microsoft SQL Server 2005 포켓 컨설턴트 관리자용

6주차.key

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

Contents I. 칼라스 네트워크 플레이어란 1. Pc-Fi를 넘어서 발전한 차세대 음악 플레이어 칼라스 네트워크 플레이어의 장점 3. 시스템 기본 구성

1.LAN의 특징과 각종 방식

Cloud Friendly System Architecture

untitled

Chap7.PDF

FileMaker 15 ODBC 및 JDBC 설명서

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터

Spotlight on Oracle V10.x 트라이얼프로그램설치가이드 DELL SOFTWARE KOREA

Microsoft PowerPoint - eSlim SV [ ]

MySQL-Ch10

SMB_ICMP_UDP(huichang).PDF

No Slide Title

歯이시홍).PDF

[Brochure] KOR_TunA

KDTÁ¾ÇÕ-2-07/03

untitled

vm-웨어-01장

Integ

歯두산3.PDF


리뉴얼 xtremI 최종 softcopy

Microsoft PowerPoint - eSlim SV [080116]

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

Oracle Apps Day_SEM

10.ppt

OVERVIEW 디트라이브는 커뮤니케이션 환경의 다변화에 대응하기 위한 고객들의 다양한 욕구를 충족시키기 위해, TV광고부터 온라인 광고 및 프로모션과 웹사이트 구축은 물론 뉴미디어까지 아우르는 다양한 IMC 기능을 수행하는 마케팅 커뮤니케이션 회사입니다. 대표이사 설

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

MAX+plus II Getting Started - 무작정따라하기

FileMaker ODBC 및 JDBC 가이드


1. 들어가며 많은기업들이정보시스템의근간으로데이터베이스를사용하고있고또많은사람들이데이터베이스의성능에대해불만을토로한다. 데이터베이스의성능문제와관련해많은원인과해결책이있지만이문제와관련해자주언급되는개념이있다. Hard Parsing 이그것이다. Hard Parsing 은성능에좋

Transcription:

1. Application Architecture Layered Application 개념 Layered Application 개념도 구분 Presentation Layer Business Layer Data Layer Data Sources 내용설명 Business Layer 와 User 간 Interface 제공 Business Logic 구현 Data Source 에존재하는 Data 에대한 Access 제공 Data 의저장 / 추출 출처 : Microsoft Application Architecture Guide, 2nd Edition Application Layer 는물리적 Layer 를의미하지않으며해당역할을수행하는위치의구분에따라 N-tier Architecture 를가지는 System 으로서작동함 개별 Layer 는인접 Layer 와상호작용을수행하며상호작용의수행회수와양이성능과밀접한관계를가짐 2

1. Application Architecture Business Data Layer 위치에따른구분 AP Server 집중형 AP-DB Server 분산형 DB Server 집중형 BL, DL 모두 AP Server 에위치 BL 는 AP Server 에 DL 은 DB Server 에위치 BL, DL 모두 DB Server 에위치 AP Server DB Server AP Server DB Server AP Server DB Server func func_a() { } proc_a { Loop sp:=func_a(arg); End loop; } proc_a { Loop sp:=func_a(arg); End loop; } func func_a() { } call proc_a() func func_a() { } proc_a { Loop sp:=func_a(arg); End loop; } 3

1. Application Architecture Business Data Layer 위치에따른성능및자원사용량관점의특성 구분 AP Server 집중형 AP-DB Server 분산형 DB Server 집중형 자원사용량 AP Server > DB Server AP Server DB Server AP Server < DB Server 상호작용회수높음중간낮음 성능 Business 처리주체 상호작용회수가높아성능에부정적 상호작용회수가감소해성능이개선됨 AP Server AP Server DB Server 중점관리대상 AP Server AP Server DB Server 상호작용회수가최소화돼가장빠른수행성능 DB 독립성 DB Vendor 에독립적구조 DB Vendor 에일부종속적 DB Vendor 에완전종속적 개발언어 AP 용개발언어만필요 AP 용개발언어및 DB 종속적개발언어필요 Code 관리 AP Code 만유지관리 Code 간정합성유지는 AP Compile 시점에관리 AP Code 및 DB Code 관리 Code 간정합성유지는 AP Compile 시점에관리, DB Code 정합성관리는 Object 변경시 DBMS 가관리 장점 단일화된관리, 높은안정성 처리성능개선, 자원사용량 감소 4

2. Application 처리위치에따른성능테스트 테스트개요 구분 테스트목적 측정대상 대상내용 임의의 Business Logic 을수행하는과정에서해당 Logic 의처리위치에따라처리소요시간및자원사용량을측정해차세대 Application 설계과정에서참고할수있도록함 Client 측면에서측정된수행소요시간 DB Server 측면에서측정된주요 Stat/Event 지표 테스트수행방법 Pro*C 로간단한 Logic 을생성해처리하며해당 Operation 군에대해 10046 Trace 와 Stat/Event 지표를수집함 테스트의한계 무부하상태에서단일 Session 에대해서만 Test 를수행해부하상태의경우와결과가차이가날수도있으나큰차이는없을것으로기대됨 테스트수행방법 1 차테스트와동일단 11g New Feature 는사용하지않았으며 9i 에서의 Test 와동일한조건으로수행하였음 5

2. Application 처리위치에따른성능테스트 테스트대상장비 DB Server AP Server hostname Server Model CPU Power 7 3724MHz * 12EA Power 7 3724MHz * 8EA Memory 94,208 MB 53,504 MB OS AIX 6.1 64bit AIX 6.1 64bit DB Server Oracle Database 11g 64 bit Buffer Cache 192 MB Shared Pool 832 MB 6

2. Application 처리위치에따른성능테스트 테스트 Application 처리 Logic 2005.01.01 2005.01.02 2005.01.03 기준일자 F_GET_DT( 기준일자,3) 기준일자 +3 2013.03.17 2013.03.18 2013.03.19 2013.03.20 F_GET_DT Function 은처리과정중 F_GET_HOLI, F_NAP_DT, F_GET_NAME Function 을호출함 2005.01.05 2005.01.05 2005.01.06 2013.03.20 2013.03.21 2013.03.22 2013.03.25 2005.01.05 2005.01.06 2013.03.20 2013.03.21 2013.03.22 7 2005.01.04 2005.01.05 2005.01.06 2013.03.20 2013.03.21 2013.03.22 2013.03.23 2005.01.01 을기점으로 3000 일 ( 약 8 년 2 개월 19 일 ) 의개별일자에대해 F_GET_DT 함수의 Logic 으로구한 3 영업일과단순히현재날짜에 3 일을더한일자를구해양쪽의일자가동일한경우 Table 에 Insert 를수행함 Logic 을 Pro*C 로구현해 AP 에서수행하는경우와 DB Function 을통해 DB 에서구현하는경우를구분해각각의경우의자원사용량과성능을비교함 Function logic 은내부적으로 Loop 구조를통한 SQL Call 이포함되며이부분은테스트 Case 에서변경되지않음

2. Application 처리위치에따른성능테스트 테스트 Application 구조 Test Case 1 : Client PC 에 Presentation Layer, Business Layer, Data Layer 가모두존재 AP Server DB Server 처리요청 처리 Logic C_F_GET_DT C_F_GET_HOLI DELETE SELECT INSERT DBMS Client Process Server Process 모든처리 Logic 이 AP Server 에존재함 DB Server 는 AP Server 가요청한 SQL 문장을 Server Process 를통해수행함 처리 Logic 수행에따라발생하는모든 SQL 문장을반복적으로처리하므로 Network 접근량및자원사용량이매우큼 8

2. Application 처리위치에따른성능테스트 테스트 Application 구조 Test Case 2 : Client PC 에 Presentation Layer, Business Layer, Data Layer 가모두존재, DB Server 에 Data Layer 가사용하는일부 Function 존재 AP Server DB Server 처리요청 처리 Logic DELETE SELECT INSERT DBMS Client Process Server Process F_GET_DT F_GET_HOLI 내부적으로많은 SQL 호출을하는 Function 이 DB Server 에존재 DB Server 는 AP Server 의 Client Process 가요청한 SQL 문장을 Server Process 를통해수행함 Function을통해수행하는 SQL문장은 DB Server 내부적으로처리돼 Network 의존도가 Case 1보다비교적많이감소함 9

2. Application 처리위치에따른성능테스트 테스트 Application 구조 Test Case 3 : Client PC 에는 Presentation Layer 가존재, DB Server 에 Business Layer, Data Layer 가존재 AP Server DB Server 처리요청 요청전달 처리 Logic DELETE SELECT INSERT DBMS Client Process Server Process F_GET_DT F_GET_HOLI AP Server 는사용자의요청을 DB Server 에요청하고결과를전달함 모든처리 Logic 은 DB Server 에존재하며 AP Server 와 DB Server 간 Network 통신은처리요청및결과수신시에만발생함 내부적으로 Function 에의해많은처리가발생하며세부종류인 A,B,C 에서는내부처리 시호출관계를감소시키는구조를사용하였음 10

2. Application 처리위치에따른성능테스트 테스트 Case 구분 Test Case 1 Test Case 2 Test Case 3A Test Case 3B Test Case 3C 대상내용 AP Server 에 Presentation Layer, Business Layer, Data Layer 가모두존재 ( 테스트 Application 구조 Test Case 1 참조 ) AP Server 에 Presentation Layer, Business Layer, Data Layer 가모두존재, DB Server 에 Data Layer 가사용하는일부 Function 존재 ( 테스트 Application 구조 Test Case 2 참조 ) AP Server 에는 Presentation Layer 가존재, DB Server 에 Business Layer, Data Layer 가존재 ( 테스트 Application 구조 Test Case 3 참조 ) Server 측에서 SQL 개별처리 AP Server 에는 Presentation Layer 가존재, DB Server 에 Business Layer, Data Layer 가존재 ( 테스트 Application 구조 Test Case 3 참조 ) Server 측에서 BULK COLLECT, FORALL 을통해집합적처리 AP Server 에는 Presentation Layer 가존재, DB Server 에 Business Layer, Data Layer 가존재 ( 테스트 Application 구조 Test Case 3 참조 ) Server 측에서처리 Logic 및 SQL 문장을 1 개의 SQL 문장으로통합 11

3. 테스트결과분석 테스트 Case 별처리시간비교 [Server 측정처리소요시간 ] Client 측정처리소요시간, Client CPU 사용시간은 AP Server 에서 Test Application 의실수행시간을 timex 를통해측정 Server 측정처리소요시간은 Server 측면에서작업수행전 / 후 Timestamp 를기록해측정 [Client 측정처리소요시간 ] 12

3. 테스트결과분석 Test Case 1 Stat 지표 Event 지표 session logical reads Buffer Reads 량 43,473 SQL*Net message from client 6.2 초 user calls 총호출횟수 54,117 log file sync 0.0004 초 execute count SQL 수행횟수 26,310 처리소요시간 parse count (total) Parse 횟수 26,314 Client 측정소요시간 13.18 초 SQL*Net roundtrips to/from client bytes received via SQL*Net from client Network roundtrip 횟수 Network 을통한전송량 bytes sent via SQL*Net to client 1,142,7010 27,809 Client CPU 사용시간 0.88 초 1,352,6703 Server 측정소요시간 12 초 session pga memory Server Process Memory 사용량 1,507,328 13

3. 테스트결과분석 Test Case 2 Stat 지표 Event 지표 session logical reads Buffer Reads 량 49,967 SQL*Net message from client 0.56 초 user calls 총호출횟수 3,805 log file sync 0.0004 초 execute count SQL 수행횟수 16,732 처리소요시간 parse count (total) Parse 횟수 16 Client 측정소요시간 4.5 초 SQL*Net roundtrips to/from client bytes received via SQL*Net from client Network roundtrip 횟수 Network 을통한전송량 bytes sent via SQL*Net to client 564,203 2,653 Client CPU 사용시간 0.08 초 546,224 Server 측정소요시간 3 초 session pga memory Server Process Memory 사용량 1,572,864 14

3. 테스트결과분석 Test Case 3A Stat 지표 Event 지표 session logical reads Buffer Reads 량 43,291 SQL*Net message from client 0.0014 초 user calls 총호출횟수 10 log file sync 0.0025 초 execute count SQL 수행횟수 16,733 처리소요시간 parse count (total) Parse 횟수 16 Client 측정소요시간 3.84 초 SQL*Net roundtrips to/from client bytes received via SQL*Net from client Network roundtrip 횟수 Network 을통한전송량 bytes sent via SQL*Net to client 1,244 5 Client CPU 사용시간 0.03 초 1,664 Server 측정소요시간 3 초 session pga memory Server Process Memory 사용량 1,572,864 15

3. 테스트결과분석 Test Case 3B Stat 지표 Event 지표 session logical reads Buffer Reads 량 39,118 SQL*Net message from client 0.0014 초 user calls 총호출횟수 10 log file sync 0.0018 초 execute count SQL 수행횟수 15,587 처리소요시간 parse count (total) Parse 횟수 16 Client 측정소요시간 3.4 초 SQL*Net roundtrips to/from client bytes received via SQL*Net from client Network roundtrip 횟수 Network 을통한전송량 bytes sent via SQL*Net to client 1,244 5 Client CPU 사용시간 0.03 초 1,664 Server 측정소요시간 2 초 session pga memory Server Process Memory 사용량 1,441,792 16

3. 테스트결과분석 Test Case 3C Stat 지표 Event 지표 session logical reads Buffer Reads 량 39,162 SQL*Net message from client 0.014 초 user calls 총호출횟수 10 log file sync 0.0019 초 execute count SQL 수행횟수 15,586 처리소요시간 parse count (total) Parse 횟수 15 Client 측정소요시간 3.42 초 SQL*Net roundtrips to/from client bytes received via SQL*Net from client Network roundtrip 횟수 Network 을통한전송량 bytes sent via SQL*Net to client 1,244 5 Client CPU 사용시간 0.02 초 1,664 Server 측정소요시간 2 초 session pga memory Server Process Memory 사용량 1,572,864 17

3. 테스트결과분석 주요지표별분석 Buffer Cache 로부터읽어온전체자료량은각테스트 Case 별로크게차이나지않으나 Case 3B, Case 3C 의사용량이내부적으로최적화가더진행된형태로보다적은자원을사용하고있음 Case 1, Case 2 의경우 Client 에서일부 Logic 이처리되므로그만큼 Server CPU 자원은적게사용하고있음. Logic 및 Data 처리가 Server 에서이루어진 Case 3 Series 가 DB CPU 자원을더많이사용했음 18

3. 테스트결과분석 주요지표별분석 Case 1 만수행회수가높게나타나고있는데그이유는날짜연산이사용되는경우 C 에서는해당기능을직접수행하지못해 DB 에위임해처리함으로써 DB Server 에서처리할경우별도수행횟수증가없이처리가능한부분이추가수행됐기때문임 User calls 지표는 Client 로부터요청된 execute count 및 parse count, login, fetch 의수치를합산한것으로 Server 에일부함수가존재하는테스트 Case 2 부터급격히감소하는모습을나타내고있음 19

3. 테스트결과분석 주요지표별분석 Client 로부터모든요청이처리되는테스트 Case 1 이 Network 자원을상당히많이사용하는것으로나타나고있으며일부 Function 이 DB 에있는경우 Network 자원사용량이많이감소하지만모든처리가 Server 상에서이루어지는경우와는큰차이를보이고있음 20

3. 테스트결과분석 주요지표별분석 SQL*Net message from client wait time 은 Client 측면에서의처리시간및 Network round trip 에따른지체현상으로 DB 측면에서대기하는시간으로모든 Logic 처리가 Client PC 에서이루어지는테스트 Case 1 에서가장크게나타나고있으며이는사용자관점에서처리성능지연의결과로나타났음. 이부분이지난테스트결과가큰차이를보이는부분으로인접 Server 로고속 Network Line 을사용하는경우대기시간이대폭적으로감소했음을알수있음 log file sync Wait 의경우구조적으로테스트 Case 3B/3C 가가장좋은효율을보여야하지만여기서는비교적큰값으로나타났으나 log file sync wait Event 자체가 1 회또는 2 회만발생해본결과는대표성을부여하기는어려움 21

3. 테스트결과분석 CPU 사용량 AP Server 에서 timex 로측정된 CPU 사용량과 DB Server 에서 CPU used by this session 지표로측정된지표를근거로총 CPU 사용시간을측정함 ( 일부오차존재함 ) CPU 사용효율측면에서는 Logic 을일부나누어처리하는것이효율적인것으로나타나고있음 22

4. 1 차테스트와의결과비교 Network 지연시간감소 본테스트에서 Case1 의경우수행방식의변경으로 Network Roundtrip 수치가크게증가했으나 (Case 2 부터증가한이유는 Application 수행방식의변경이아닌 DBMS Version 차이에서발생하는현상임 ) 총 대기시간은 70.29 초에서 6.2 초로상당한감소가이루어졌음 23

4. 1 차테스트와의결과비교 Network 지연시간감소 1 회의 Network Roundtrip 시사용되는시간은다음과같은방법으로근사값을추출할수있음 Total Network Roundtrip Latency = SQL*Net message from clients Client Working Time Average Network Roundtrip Latency = Total Network Roundtrip Latency / Total Network Roundtrip count 구분 SQL*Net message from clients (ms) Client Working Time (ms) Total Network Roundtrip Latency (ms) Total Network Roundtrip count Avg. Network Roundtrip Latency (ms) Case 1 6,195.212 0.88 6,194 27,809 0.22275 Case 2 563.281 0.08 563 2,653 0.21229 Case 3A 1.478 0.03 1 5 0.2896 Case 3B 1.381 0.03 1 5 0.2702 Case 3C 1.446 0.02 1 5 0.2852 위의결과를통해 1 회의 RoundTrip 당 0.21ms ~ 0.28ms 의시간이소요됐음을알수있음 이를통해 AP 의 Logic 을통해 DB Server 와연동할경우대략적인 Network 지연시간을추정할수있음 유사한방법으로계산시 1 차테스트의경우 1.9ms ~ 4.2ms 의시간이소요됐음을알수있음 24

4. 1 차테스트와의결과비교 DBMS Version 변경에따른자원사용량의증가 동일한 Pattern 의 Application 이수행됐음에도불구하고대부분의자원사용량이증가했음을보여주고 있음. 이는변경된구조에따라발생하는현상으로일반적으로전반적인처리성능은개선되고있으나관련자원사용량또한증가하고있으므로향후 System Test 수행을통해차세대 Server 용량의적절성을검증할 필요가있음 25

5. 테스트결과에따른권고사항 테스트결과에따른권고사항 Application Logic 을 AP Server 에일임하는방안과 DB Server 에분산처리하도록하는방안은각각 특징과장단점이존재하며이해관계자가가장중요하게여기는품질속성에초점을맞출필요가있음 Application 개발시성능에크게영향을미치는요소는 Resource 에대한접근량이아닌접근횟수이며구조적으로이런접근횟수를감소시키는방안을수립하는것이중요함 앞서제시된양극단의방법은반대의기준에서문제의여지가있으므로어느정도혼합된구조를취할 필요가있으며중요 Transaction 중일부를 PL/SQL 화해성능을개선할필요가있음 본테스트 Case 에포함되지않지만 PL/SQL 변경시가능한 Loop 구조를배제할필요가있음 DBMS Version Upgrade 에따라 Network 자원사용량의증가가눈에띄며 AP 와 DB 가별도의 Server 로 분리되는환경에서는이에따른영향이보다커질것으로예상되므로현재구조에서 Round Trip 이많이 발생하는 Application, 성능이중요한 Application 중많이호출되는공통함수는처리 Module 을 DB Server 에위치하도록하는것이바람직해보임 AS-IS 에서공통적으로많이사용되는 Function 은향후 DB 또는 AP 가지원하는 Cache 를통해호출횟수를최소화해자원사용량감소및처리시간최소화에기여할수있도록설계할필요가있음 이를위해선도개발단계에서각각의방식에대해성능테스트를수행할필요가있음 26