JVM GC 와메모리 Tuning < 조병욱 > JVM GC 와메모리 Tuning 특별기고 1 1. GC란무엇인가? GC는 Garbage Collection의약자로 Java 언어의중요한특징중의하나이다. GC는 Java Application에서사용하지않는메모리를자동으로수
|
|
- 장우 풍
- 5 years ago
- Views:
Transcription
1 < 조병욱 > 1. GC란무엇인가? GC는 Garbage Collection의약자로 Java 언어의중요한특징중의하나이다. GC는 Java Application에서사용하지않는메모리를자동으로수거하는기능을말한다. 예전의전통적인언어인 C에서는 malloc, free 등을이용해서메모리를할당하고, 일일이그메모리를수거해줘야했다. 그러나 Java 언어에서는 GC 기술을사용함에따라, 개발자는메모리관리로부터좀더자유롭게되었다. < 그림 2. Java 메모리구조 > Java의메모리영역은앞에서이야기한두영역 (Young 영역, Old 영역 ) 과 Perm 영역이렇게 3가지로영역으로구성된다. 2. GC의동작방법은어떻게되는가? 1) JVM 메모리영역 GC의동작방법을이해하기위해서는 Java의메모리구조를먼저이해할필요가있다. 일반적으로 Application에서사용되는객체는오래유지되는객체보다, 생성되고얼마안있어서사용되지않는경우가많다. < 그림 1 참조 > 영역 New/Young Old 영역 Perm 영역 < 표 1. Java 메모리영역 > 설명 이영역은 Java 객체가생성되자마자저장되고, 생긴지얼마안되는객체가저장되는곳이다. Java 객체가생성되면이영역에서저장되다가, 시간이지남에따라우선순위가낮아지면 Old 영역으로옮겨진다. New/Young 영역에서저장되었던객체중에오래된객체가이동되어서저장되는영역 Class,Method 등의 Code 등이저장되는영역으로 JVM 에의해서사용된다. 2) GC 알고리즘 < 그림 1. 메모리 foot print> 그러면이메모리영역을 JVM 이어떻게관리하는지에대해서알아보자. JVM 은 New/Young 영역과, Old 영역이두영역에대해서만 GC 를수행한다. Perm 영역은앞에서설명했듯이 Code가저장되는영역이기때문에, GC 가일어날필요가없다. Perm 영역은 Code 가모두 Load되고나면거의일정한수치를유지한다. 그래서 Java에서는크게두가지영역으로메모리를나누는데 Young 영역과 Old 영역이그것이다. Young 영역은생긴지얼마안된객체들을저장하는장소이고, Old 영역은생성된지오래된객체를저장하는장소이다. 각영역의성격이다른만큼 GC의방법도다르다. 먼저 Java의메모리구조를살펴보자. Minor GC 먼저 New/Young 영역의 GC방법을살펴보자. New/Young 영역의 GC를 Minor GC 라고부르는데, New/Young 영역은 Eden과 Survivor라는두가지영역으로또나뉘어진다. Eden 영역은 Java 객체가생성되자마자저장되는곳이다. 이렇게생성된객체는 Minor GC 가발생할때 Survivor 영역으로이동된다. 10
2 Bea Enterprise Solution Technical News Survivor 영역은 Survivor 1과 Suvivor 2 영역두영역으로나뉘어지는데, Minor GC가발생하면 Eden과 Survivor 1에 Alive되어있는객체를 Suvivor 2로복사한다. 그리고 Alive 되어있지않는객체는자연히 Suvivor 1에남아있게되고, Survivor 1과 Eden 영역을 Clear한다. ( 결과적으로 Alive된객체만 Survivor 2로이동한것이다.) 다음번 Minor GC 가발생하면같은원리로 Eden과 Survivor 2 영역에서 Alive되어있는객체를 Survivor 1에복사한다. 계속이런방법을반복적으로수행하면서 Minor GC를수행한다. Eden 영역에 Alive된객체와 Suvivor 1 영역에 Alive된객체를 Survivor 2에 copy한다 Eden 영역과 Suvivor 2 영역을 clear한다. 이렇게 Minor GC 를수행하다가, Survivor 영역에서오래된객체는 Old 영역으로옮기게된다. 이런방식의 GC 알고리즘을 Copy & Scavenge라고한다. 이방법은매우속도가빠르며작은크기의메모리를 Collecting 하는데매우효과적이다. Minor GC의경우에는자주일어나기때문에, GC에소요되는시간이짧은알고리즘이적합하다. < 그림 rd Minor GC> 객체가생성된시간이오래지나면 Eden과 Suvivor 영역에있는오래된객체들을 Old 영역으로이동한다. 이내용을그림을보면서살펴보도록하자. Full GC Old 영역의 Garbage Collection을 Full GC라고부르며, Full GC에서는 Mark & Compact라는알고리즘을이용한다. Mark & Compact 알고리즘은전체객체들의 reference를쭉따라가면서 reference가연결되지않는객체는 Mark 한다. 이작업이끝나면사용되지않는객체는모두 Mark가되고, 이 mark된객체를삭제한다.< 그림 4 참고 > ( 실제로는 compact라고해서, mark된객체로생기는공간을 unmark된즉사용하는객체로메꾸어버린다.) < 그림 st Minor GC> Eden에서 Alive된객체를 Suvivor1으로이동한다. Eden 영역을 Clear한다. Full GC는매우속도가느리며, Full GC가일어나는도중에는순간적으로 Java Application이멈춰버리기때문에, Full GC가일어나는정도와 Full GC 에소요되는시간은 Application의성능과안정성에아주큰영향을준다. < 그림 nd Minor GC> < 그림 4. Full GC> 11
3 3. GC 가왜중요한가? 2) Parallel GC Garbage Collection 중에서 Minor GC 의경우보통 0.5 초이내에끝나기때문에큰문제가되지않는다. 그러나 Full GC 의경우보통수초가소요가되고, Full GC동안에는 Java Application이멈춰버리기때문에문제가될수있다. 예를들어게임서버와같은 Real Time Server를구현을했을때, Full GC 가일어나서 5초동안시스템이멈춘다고생각해보자. 또일반 WAS 에서도 5~10초동안멈추면, 멈추는동안사용자의 Request가 Queue에저장되었고, Full GC가끝난후에그요청이한꺼번에들어오게되면과부하에의한여러장애를만들수있다. 그래서원활한서비스를위해서는 GC를어떻게일어나게하느냐가시스템의안정성과성능에큰변수로작용할수있다. JDK 1.3까지 GC는하나의 Thread에서이루어진다. Java가 Multi Thread환경을지원함에도불구하고, 1 CPU 에서는동시에하나의 Thread만을수행할수밖에없기때문에, 예전에는하나의 CPU 에서만 GC를수행했지만, 근래에들어서하나의 CPU 에서동시에여러개의 Thread를실행할수있는 Hyper Threading기술이나, 여러개의 CPU 를동시에장착한 HW 의보급으로하나의 HW Box 에서동시에여러개의 Thread를수행할수있게되었다. JDK 1.4부터지원되는 Parallel GC는 Minor GC 를동시에여러개의 Thread를이용해서수행하는방법으로하나의 Thread를이용하는것보다훨씬빨리작업할수있다. 4. 다양한 GC 알고리즘 앞에서설명한기본적인 GC방법 (Scavenge와 Mark and compact) 이외에 JVM에서는좀더다양한 GC 방법을제공하고그동작방법이나사용방법도틀리다. 이번에는다양한 GC 알고리즘에대해서알아보자. 현재 (JDK 1.4) 까지나와있는 JVM의 GC방법은크게아래 4가지를지원하고있다. - Default Collector - Parallel GC for young generation (from JDK 1.4 ) - Concurrent GC for old generation (from JDK 1.4) - Incremental GC (Train GC) 1) Default Collector < 그림 5. Parallel GC 개념도 > < 그림 5> 을보자왼쪽의 Default GC 방법은 GC가일어날때 Thread들이작업을멈추고, GC를수행하는 thread 만 gc를수행한다 ( 그림에서빨간영역 ), Parallel GC에서는동시에여러 thread 들이 gc를수행하기때문에, gc에소요되는시간이낮아진다. 이 GC 방법은앞에서설명한전통적인 GC방법으로 Minor GC 에 Scavenge를, Full GC에 Mark & compact 알고리즘을사용하는방법이다. 이알고리즘은이미앞에서설명했기때문에별도의설명은생략한다. JDK 1.4에서부터새로적용되는 GC방법은 Parallel GC와 Concurrent GC 두가지방법이있다. Parallel GC는 Minor GC를좀더빨리하게하는방법이고 (Throughput 위주 ) Concurrent GC는 Full GC시에시스템의멈춤 (Pause) 현상을최소화하는 GC방법이다. Parallel GC가언제나유익한것은아니다. 앞에서도말했듯이 1 CPU 에서는동시에여러개의 thread를실행할수없기때문에오히려 Parallel GC가 Default GC에비해서느리다. 2 CPU에서도 Multi thread에대한지원이나계산등을위해서 CPU Power가사용되기때문에, 최소한 4 CPU, 256M 정도의메모리를가지고있는 HW에서 Parallel GC가유용하게사용된다. Parallel GC는크게두가지종류의옵션을가지고있는데, Lowpause 방식과 Throughput 방식의 GC방식이있다. Solaris 기준에서 Low-pause Parallel GC는
4 Bea Enterprise Solution Technical News XX:+UseParNewGC 옵션을사용한다. 이모델은 Old 영역을 GC할때다음에설명할 Concurrent GC 방법과함께사용할수있다. 이방법은 GC가일어날때빨리 GC하는것이아니라 GC가발생할때 Application이멈춰지는현상 (pause) 를최소화하는데역점을뒀다. Throughput 방식의 Parallel GC는 -XX:+UseParallelGC (Solaris 기준 ) 옵션을이용하며 Old 영역을 GC할때는 Default GC (Mark and compact) 방법만을사용하도록되어있다. Minor GC가발생했을때, 되도록이면빨리수행하도록 throughput에역점을두었다. 그외에도 Parallel GC를수행할때동시에몇개의 Thread를이용하여 Minor영역을 Parallel GC할지를결정할수있는데, - XX:ParallelGCThreads=<desired number> 옵션을이용하여 Parallel GC에사용되는 Thread의수를지정할수있다. 3) Concurrent GC 앞에서도설명했듯이, Full GC 즉 Old 영역을 GC하는경우에는그시간이길고 Application이순간적으로멈춰버리기때문에, 시스템운용에문제가된다. < 그림 6> 에서와같이 Application이수행중일때 ( 붉은라인 ) Full GC를위한작업을수행한다 (Sweep, mark). Application을멈추고수행하는작업은일부분 (initial-mark, remark 작업 ) 만을수행하기때문에, 기존 Default GC 의 Mark & Sweep Collector에비해서 Application이멈추는시간이현저하게줄어든다. Solaris JVM에서는 -XX:+UseConcMarkSweepGC Parameter 를이용해세팅한다. 4) Incremental GC (Train GC) Incremental GC 또는 Train GC라고도불리는 GC방법은 JDK 1.3에서부터지원된 GC방법이다. 앞에서설명한 Concurrent GC 와비슷하게, 의도자체는 Full GC 에의해서 Application이멈추는시간을줄이고자하는데있다. Incremental GC의작동방법은간단하다. Minor GC가일어날때마다 Old 영역을조금씩 GC를해서 Full GC 가발생하는횟수나시간을줄이는방법이다. 그래서 JDK 1.4부터제공하는 Concurrent GC는기존의이런 Full GC 의단점을보완하기위해서 Full GC 에의해서 Application 이멈추어지는현상을최소화하기위한 GC방법이다. Full GC 에소요되는작업을 Application을멈추고진행하는것이아니라, 일부는 Application이돌아가는단계에서수행하고, 최소한의작업만을 Application이멈췄을때수행하는방법으로 Application이멈추는시간을최소화한다. < 그림 7. Incremental GC 개념도 > < 그림 7> 에서보듯이왼쪽의 Default GC는 Full GC 가일어난후에나 Old 영역이 Clear 된다. 그러나, 오른쪽의 Incremental GC를보면 Minor GC 가일어난후에, Old 영역이일부 Collect 된것을볼수있다. < 그림 6. Concurrent GC 개념도 > Incremental GC를사용하는방법은 JVM 옵션에 -Xinc 옵션을사용하면된다. Incremental GC는많은자원을소모하고, Minor GC 를자주일으키고, 그리고 Incremental GC를사용한다고 Full GC가없어지거나그횟수가획기적으로줄어드는것은아니다. 오히려느려지는경우가많다. 필히테스트후에사용하도록하자. 13
5 Default GC이외의알고리즘은 Application의형태나 HW Spec(CPU수, Hyper threading 지원여부 ), 그리고 JVM 버전 (JDK 1.4.1이냐 냐 ) 에따라서차이가매우크다. 이론상으로는실제로성능이좋아보일수있으나, 운영환경에서는여러요인으로인해서기대했던것만큼의성능이안나올수있기때문에, 실환경에서미리충분한테스트를거쳐서검증한후에사용해야한다. 5. GC 로그의수집과분석방법 JVM 에서는 GC 상황에대한로그를남기기위해서옵션을제공하고있다. Java 옵션에 -verbosegc라는옵션을주면되고 HP Unix의경우 -verbosegc -Xverbosegc 옵션을주면좀더자세한 GC정보를얻을수있다. GC 정보는 stdout 으로출력이되기때문에 > (redirection) 등을이용해서 file에저장해놓고분석할수있다. 타낸다. Heap size after GC는 GC가발생한후에 Heap의사용량이다. Minor GC 가발생했을때는 Eden과 Survivor 영역이 GC가되므로 Heap size after GC는 Old 영역의용량과유사하다.(Minor GC 에서 GC되지않은하나의 Survivor 영역내의 Object 들의크기도포함해야한다.) Total Heap Size는현재 JVM이사용하는 Heap Memory 양이다. 이크기는 Java에서 -ms와 -mx 옵션으로조정이가능한데. 예를들어 -ms512m -mx1024m로해놓으면 Java Heap은메모리사용량에따라서 512~1024m 사이의크기에서적절하게늘었다줄었다한다. ( 이늘어나는기준과줄어드는기준은 (-XX:MaxHeapFreeRatio와 -XX:MinHeapFreeRation를이용해서조정할수있으나 JVM vendor에따라서차이가나기때문에각 vendor별 JVM 매뉴얼을참고하기바란다.) Parameter에대한이야기는추후에좀더자세히하도록하자. Example) java -verbosegc MyApplication 그다음값은 GC 에소요된시간이다. 그럼실제로나온 GC 로그를어떻게보는지를알아보자. [GC 40549K->20909K(64768K), secs] [GC 41197K->21405K(64768K), secs] [GC 41693K->22995K(64768K), secs] [GC 43283K->23672K(64768K), secs] [Full GC 43960K->1749K(64768K), secs] [GC 22037K->2810K(64768K), secs] [GC 23098K->3657K(64768K), secs] [GC 23945K->4847K(64768K), secs] GC Time Total Heap Size Heap size after GC Heap size before GC < 그림 8. 일반적인 GC 로그, Windows, Solaris> Full GC < 그림 8> 의 GC로그를보면 Minor GC가일어날때마다약 20,000K 정도의 Collection이일어난다. Minor GC 는 Eden과 Suvivor 영역하나를 GC하는것이기때문에 New/Young 영역을 20,000Kbyte 정도로생각할수있다. Full GC일때를보면약44,000Kbyte에서 1,749Kbyte로 GC가되었음을볼수있다. Old 영역에큰데이타가많지않은경우이다. Data 를많이사용하는 Application의경우전체 Heap이 512이라고가정할때, Full GC 후에도 480M 정도로유지되는경우가있다. 이런경우에는실제로 Application에서 Memory를많이사용하고있다고판단할수있기때문에전체 Heap Size를늘려줄필요가있다. 이렇게수집된 GC로그는다소보기가어렵기때문에, 좀더쉽게분석할수있게하기위해서 GC로그를 awk 스크립트를이용해서정제하면분석이용이하다. < 그림 8> 는 GC로그결과를모아놓은내용이다. ( 실제로는 Application의 stdout으로출력되는내용과섞여서출력된다.) Minor GC는 [GC 로표기되고, Full GC는 [Full GC 로표기된다. 그다음값은 Heap size before GC인데, GC 전에 Heap 사용량 (New/Young 영역 + Old 영역 + Perm 영역 ) 의크기를나 < 표 2. gc.awk 스크립트 > BEGIN{ printf( Minor\tMajor\tAlive\tFree\n ); } { 14
6 Bea Enterprise Solution Technical News if( substr($0,1,4) == [GC ){ split($0,array, ); printf( %s\t0.0\t,array[3]) split(array[2],barray, K ) before=barray[1] after=substr(barray[2],3) reclaim=before-after printf( %s\t%s\n,after,reclaim) } if( substr($0,1,9) == [Full GC ){ split($0,array, ); printf( 0.0\t%s\t,array[4]) split(array[3],barray, K ) before = barray[1] after = substr(barray[2],3) reclaim = before - after printf( %s\t%s\n,after,reclaim) } next; } 이스크립트를작성한후에 Unix 의 awk 명령을이용해서 % awk -f gc.awk GC 로그파일명을실행하면아래 < 표 3> 와같이정리된형태로 GC 로그만추출하여보여준다. < 표 3. gc.awk 스크립트에의해서정재된로그 > Minor Major Alive Freed Minor와 Major는각각 Minor GC 와 Full GC가일어날때소요된시간을나타내며, Alive 는 GC 후에남아있는메모리양, 그리고 Freed 는 GC 에의해서 collect 된메모리양이다. 이로그파일은 excel 등을이용하여그래프등으로변환해서보면좀더다각적인분석이가능해진다. JDK 1.4에서부터는 -XX:+PrintGCDetails 옵션이추가되어서좀더자세한 GC정보를수집할수있다. HP JVM 의 GC Log 수집 HP JVM 은전체 heap 뿐아니라 -Xverbosegc 옵션을통해서 Perm, Eden, Old등의모든영역에대한 GC정보를좀더정확하게수집할수있다. Example) java -verbosegc -Xverbosegc MyApplication <-- (HP JVM Only) HP JVM 의 GC 정보는 18개의필드를제공하는데그내용을정리해보면 < 표 4> 와같다. <GC : %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 > < 표 4. HP JVM GC 로그필드별의미 > 필드의미 %1 GC가일어난이유를나타냄 -1:Minor GC 0~6 : Full GC (0:Call to System.gc, 1:Old Generation Full,2: Perm Generation Full,3:Train Generation Full,4:Old generation expanded on last scavenge,5:old generation tool full to scavenge,6:fullgcalot) %2 GC가시작된시간 (Application이시작된시간을기준으로 sec) %3 GC invocation. Counts of Scavenge and Full GCs are maintained separately %4 Size of the object allocation request that forced the GC in bytes %5 Tenuring threshold - determines how long the new born object remains the New Generation %06 %07 %08 Eden Before After Capacity %09 %10 %11 Survivor Generation Before After Capacity %12 %13 %14 Old Generation Before After Capacity %15 %16 %17 Perm Generation Before After Capacity %18 Time taken in seconds to finish the gc 15
7 이로그를직접보면서분석하기는쉽지가않다. 그래서, HP 에서는좀더 Visual한환경에서분석이가능하도록 HPJtune이라는툴을제공한다. 다음 URL 에서다운로드받을수있다. ndex.html 를때는 heap을늘리고, 남을때는 heap을줄이는 heap growing 과 shirinking 작업을수행하는데, 메모리변화량이큰애플리케이션이아니라면이 min heap size와 max heap size는동일하게설정하는것이좋다. 일반적으로 1GB 까지의 Heap을설정하는데에는문제가없으나, 1GB 가넘는대용량메모리를설정하고자할경우에는별도의 JVM 옵션이필요한경우가있기때문에미리자료를참고할필요가있다. IBM AIX JVM의경우 %export LDR_CNTRL=MAXDATA=0x %java -Xms1500m -Xmx1500m MyApplication 2) Perm size 조정옵션 Perm Size는앞에서도설명했듯이, Java Application 자체 (Java class etc..) 가로딩되는영역이다. J2EE application의경우에는 application 자체의크기가큰편에속하기때문에, Default로설정된 Perm Size로는 application class가 loading되기에모자란경우가대부분이어서 WAS start초기나, 가동초기에 Out Of Memory 에러를유발하는경우가많다. PermSize는 -XX:MaxPermSize=128m 식으로지정할수있다. 일반적으로 WAS 에서 PermSize는 64~256m 사이가적절하다. < 그림 9. HP Jtune 을이용해서 GC 후 Old 영역의변화추이를모니터링하는화면 > 6. GC 관련 Parameter GC관련설정값을보기전에앞서서 -X와 -XX 옵션에대해서먼저언급하자. 이옵션들은표준옵션이아니라, 벤더별 JVM 에서따로제공하는옵션이기때문에, 예고없이변경되거나없어질수있으므로, 사용전에미리 JVM 벤더홈페이지에서체크한후사용해야한다. 1) 전체 Heap Size 조정옵션전체 Heap size는 -ms 와 -mx 로 Heap 사이즈의영역을조정할수있다. 예를들어 -ms512m -mx1024m 로설정하면 JVM 은전체 Heap size를 application의상황에따라서 512m~1024m byte 사이에서사용하게된다. < 그림 2> 의 Total heap size 메모리가모자 3) New 영역과 Old 영역의조정 New 영역은 -XX:NewRatio=2에의해서조정이된다. NewRatio Old/New Size의값이다. 전체 Heap Size가 768일때, NewRatio=2이면 New 영역이 256m, Old 영역이 512m 로설정이된다. JVM 1.4.X에서는 -XX:NewSize=128m 옵션을이용해서직접 New 영역의크기를지정하는것이가능하다. 4) Survivor 영역조정옵션 -XX:SurvivorRatio=64 (eden/survivor 의비율 ) 64 이면 eden 이 128m일때, survivor 영역은 2m가된다. 5) -server와 -client 옵션 JVM 에는일반적으로 server와 client 두가지옵션을제공한다. 결론만말하면 server 옵션은 WAS와같은 Server환경에최적화 16
8 Bea Enterprise Solution Technical News 된옵션이고, client옵션은워드프로세서와같은 client application 에최적화된옵션이다. 언뜻보기에는단순한옵션하나로보일수있지만, 내부에서돌아가는 hotspot compiler에대한최적화방법과메모리구조자체가아예틀리다. -server 옵션 server용 application 에최적화된옵션이다. Server application 은 boot up 시간보다는 user에대한 response time이중요하고, 많은사용자가동시에사용하기때문에 session등의 user data를다루는게일반적이다. 그래서 server 옵션으로제공되는 hotspot compiler는 java application을최적화해서빠른 response time 을내는데집중되어있다. GC 방식에대한옵션 GC 방식에대한옵션은앞에서도설명했지만, 일반적인 GC방식이외에, Concurrent GC, Parallel GC, Inceremental GC와같이추가적인 GC Algorithm이존재한다. 옵션과내용은앞장에서설명한 다양한 GC알고리즘 을참고하기바란다. 7. JVM GC 튜닝그러면이제부터지금까지설명한내용을기반으로실제로 JVM 튜닝을어떻게하는지알아보도록하자. STEP 1. Application의종류와튜닝목표값을결정한다. 또한메모리모델역시, 서버의경우에는특정사용자가서버운영시간동안계속서버를사용하는게아니기때문에 (Login하고, 사용한후에는 Logout되기때문에..) 사용자에관련된객체들이오래지속되는경우가드물다. 그래서상대적으로 Old 영역이작고 New 영역이크게배정된다. < 그림 10. 참조 > -client 옵션 client application은워드프로세서처럼혼자사용하는 application 이다. 그래서 client application은 response time보다는빨리기동되는데에최적화가되어있다. 또한대부분의 client application 을구성하는 object 는GUI Component와같이 application이종료될때까지남아있는 object 의비중이높기때문에상대적으로 Old 영역의비율이높다. JVM 튜닝을하기위해서가장중요한것은 JVM 튜닝의목표를설정하는것이다. 메모리를적게쓰는것이목표인지, GC 횟수를줄이는것이목표인지, GC에소요되는시간이목표인지, Application 의성능 (Throughput or response time) 향상인지를먼저정의한후에. 그목표치에근접하도록 JVM Parameter를조정하는것이필요하다. STEP 2. Heap size와 Perm size를설정한다. -ms 와 -mx 옵션을이용해서 Heap Size를정한다. 일반적으로 server application 인경우에는 ms와 mx 사이즈를같게하는것이 Memory의 growing과 shrinking 에의한불필요한로드를막을수있어서권장할만하다. < 그림 10. -server와 -client 옵션에따른 JVM Old 와 New영역 > 이두옵션은가장간단한옵션이지만, JVM 의최적화에아주큰부분을차지하고있는옵션이기때문에, 반드시 Application의성격에맞춰서적용하기바란다. ( 참고로, SUN JVM은 default가 client, HPJVM는 default가 server로세팅되어있다.) ms와 mx 사이즈를다르게하는경우는 Application 의특정시간대에 memory 사용량이많은 Application 에효과적이다. PermSize는 JVM vendor에따라다소차이가있으나일반적으로 16m 정도이다. Client application의경우에는문제가없을수있지만, J2EE Server Application의경우 64~128m 사이로사용이된다. Heap Size와 Perm Size는아래과정을통해서적정수치를얻어가야한다. STEP 3. 테스트 & 로그분석. JVM Option에 GC 로그를수집하기위한 -verbosegc 옵션을적용한다. (HP의경우 -Xverbosegc 옵션을적용한다.) LoadRunner나 MS Stress( 무료로 MS 의홈페이지에서다운로 17
9 드받을수있다.) 와같은 Stress Test툴을통해서 Application에 Stress를줘서그 log 를수집한다. 튜닝에있어서가장중요한것은목표산정이지만, 그만큼이나중요한것은실제 Tuning한 Parameter가 Application에어떤영향을주는지를테스트하는방법이매우중요하다. 그런의미에서적절한 Stress Tool의선정과, Stress Test 시나리오는정확한 Tuning을위해서매우중요한요인이다. Perm size 조정아래 < 그림 11> 은 HP JVM에서 -Xverbosegc 옵션으로수집한 GC log 를 HP Jtune 을통해서 graph로나타낸그래프이다. 그림을보면 Application이 startup되었을때 Perm 영역이 40m에서시간이지난후에도 50m 이하로유지되는것을볼수있다. 특별하게동적 classloading 등이수십 m byte가일어나지않는등의큰변화요인이없을때, 이 application의적정 Perm 영역은 64m 로판단할수있다. 여기서 STEP 1에서설정한 AP Tuning의목표치를참고해야하는데, Full GC 가길게일어나서 Full GC 에수행되는시간을줄이고자한다면 Old 영역을줄이면 Full GC 가일어나는횟수는늘어나고, 반대로 Full GC 가일어나는시간을줄어들것이다. 반대로 Full GC 가일어나는횟수가많다면, Old 영역을늘려주면 Full GC 가일어나는횟수는상대적으로줄어들것이고반대로 Full GC 수행시간이늘어날것이다. 특히 Server Application의경우 Full GC가일어날때는 JVM 자체가멈춰버리기때문에, < 그림 12> 의 instance는 14시간동안총 7 번시스템이멈추고, 그때마다 2.5~6sec가량시스템이 response 를못하는상태가된것이다. 그래서멈춘시간이고객이납득할만한시간인지를판단해야하고, 거기에적절한 Tuning을해야한다. Perm size < 50M Server Application에서 Full GC를적게일어나게하고, Full GC 시간을양쪽다줄이기위해서는 Old 영역을적게한후에, 여러개의 Instance를동시에띄어서 Load Balancing을해주면, Load가분산되기때문에 Full GC 가일어나는횟수가줄어들테고, Old 영역을줄였기때문에, Full GC에드는시간도줄어들것이다. 또한각각의 Full GC 가일어나는동안하나의서버 instance가멈춰져있어도, Load Balancing이되는다른서버가 response를하고있기때문에, Full GC로인한 Application이멈추는것에의한영향을최소화할수있다. < 그림 11. GC 결과중 Perm 영역그래프 > GC Time 수행시간분석다음은 GC에걸린시간을분석해보자. 앞에강좌내용에서도설명했듯이 GC Tuning에서중요한부분중하나가 GC에소요되는시간특히 Full GC 시간이다. Full GC 지금부터분석해볼 Log 는모 의물류시스템의 WAS 시스템 GC Log 이다. HP JVM 을사용하며, -server -ms512m -mx512m 옵션으로기동되는시스템이다 sec~300000sec: 약 14 시간 < 그림 12. GC 소요시간 > < 그림 12> 를보면 Peak 시간 ( 첫번째동그라미 ) 14 시간동안에 Full GC( 동그란점 ) 가 7번일어난것을볼수있다. 각각에걸린시간은 2.5~6sec 사이이다. 데이타에따라서 GC Tuning을진행한후에는다시 Stress Test 를진행해서응답시간과 TPS(Throughput Per Second) 를체크해서어떤변화를주었는지를반드시체크해봐야한다. 18
10 Bea Enterprise Solution Technical News 인판단내용은아래와같다. Full GC 향상포인트 GC Algorithm 비고 Old 영역의최소메모리요구량 Performance Parallel GC JVM 이상 4CPU 이상 ( 속도 ) 중시 Responsiveness Concurrent GC JVM 이상 4CPU 이상 ( 응답성 ) 중시 Responsiveness Incremental GC JVM 이하또는 4CPU ( 응답성 ) 중시 미만 월요일근무시간 화요일근무시간 일반 Default GC JVM 이하또는 4CPU 미만 < 그림 13. GC후의 Old 영역 > < 그림 13> 은 GC 후에 Old 영역의메모리변화량을나타낸다금요일업무시간에메모리사용량이올라가다가. 주말에가서완만한곡선을그리는것을볼수있다. 월요일근무시간에메모리사용량이매우많고, 화요일에도어느정도메모리사용량이있는것을볼수있다. 월요일에메모리사용량이많은것을볼때, 이시스템의사용자들이월요일에시스템사용량이많을수있다고생각할수있고, 또는다른주의로그를분석해봤을때이주만월요일사용량이많았다면, 특별한요인이나 Application 변경등이있었는지를고려해봐야할것이다. 이렇게 Parameter를변경하면서테스트를진행하고, 다시변경하고테스트를진행하는과정을거쳐서최적의 Parameter와 GC Algorithm을찾아내는것이 JVM 의메모리튜닝의이상적인절차이다. 지금까지 JVM 의메모리구조와 GC 모델그리고 GC 튜닝에대해서알아보았다. 정리하자면 GC 튜닝은 Application의구조나성격그리고, 사용자의이용 Pattern 에따라서크게좌우되기때문에, 얼마만큼의 Parameter를많이아느냐보다는얼마만큼의테스트와로그를통해서목표값에접근하느냐가가장중요하다. 이그래프만을봤을때 Full GC 가일어난후에도월요일근무시간을보면 Old 영역이 180M를유지하고있는것을볼수있다. 이시스템의 Full GC 후의 Old 영역은 80M~180M를유지하는것을볼수있다. 그래서이시스템은최소 180M이상의 Old 영역을필요로하는것으로판단할수있다. STEP 4. Parameter 변경. STEP 3에서구한각영역의허용범위를기준으로 Old 영역과 New 영역을적절하게조절한다. PermSize와 New영역의배분 (Eden, Survivor) 영역등을조정한다. PermSize는대부분 Log에서명확하게나타나기때문에, 크게조정이필요가없고 New 영역내의 Eden과 Survivor 는거의조정하지않는다. 가장중요한것은 Old 영역과 New 영역의비율을어떻게조정하는가가관건이다. 이비율을결정하면서, STEP 1에서세운튜닝목표에따라서 JVM 의 GC Algorithm을적용한다. GC Algorithm을결정하는기본적 19
JVM 메모리구조
조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.
More information튜닝및모니터링 SUN JVM 튜닝옵션
SUN JVM 튜닝옵션 2013. 11. 01 목차 1. 개요... 3 2. JVM 특징소개... 3 3. JVM 주요옵션소개... 4 4. 분석기술... 9 2 1. 개요 SUN JVM 의특징을살펴보고, Trouble Shooting 방법과, 실제 Site 튜닝사례를살펴보도록한다. 2. JVM 특징소개 JVM 메모리영역. GC 알고리즘 Minor GC New
More informationuntitled
Memory leak Resource 力 金 3-tier 見 Out of Memory( 不 ) Memory leak( 漏 ) 狀 Application Server Crash 理 Server 狀 Crash 類 JVM 說 例 行說 說 Memory leak Resource Out of Memory Memory leak Out of Memory 不論 Java heap
More information튜닝및모니터링 HP JVM 튜닝옵션
HP JVM 튜닝옵션 2013. 11. 01 목차 1. 개요... 3 2. JVM 특징소개... 3 3. JVM 주요옵션소개... 3 4. 분석기술... 16 2 1. 개요 HP JVM 의특징을살펴보고, TroubleShooting 방법과, 실제 Site 튜닝사례를살펴보도록한다. 2. JVM 특징소개 JVM 메모리영역. 3. JVM 주요옵션소개 GC command-line
More information[Brochure] KOR_TunA
LG CNS LG CNS APM (TunA) LG CNS APM (TunA) 어플리케이션의 성능 개선을 위한 직관적이고 심플한 APM 솔루션 APM 이란? Application Performance Management 란? 사용자 관점 그리고 비즈니스 관점에서 실제 서비스되고 있는 어플리케이션의 성능 관리 체계입니다. 이를 위해서는 신속한 장애 지점 파악 /
More informationMicrosoft Word - ntasFrameBuilderInstallGuide2.5.doc
NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,
More information<49534F20323030303020C0CEC1F520BBE7C8C4BDC9BBE720C4C1BCB3C6C320B9D7204954534D20BDC3BDBAC5DB20B0EDB5B5C8AD20C1A6BEC8BFE4C3BBBCAD2E687770>
ISO 20000 인증 사후심사 컨설팅 및 ITSM 시스템 고도화를 위한 제 안 요 청 서 2008. 6. 한 국 학 술 진 흥 재 단 이 자료는 한국학술진흥재단 제안서 작성이외의 목적으로 복제, 전달 및 사용을 금함 목 차 Ⅰ. 사업개요 1 1. 사업명 1 2. 추진배경 1 3. 목적 1 4. 사업내용 2 5. 기대효과 2 Ⅱ. 사업추진계획 4 1. 추진체계
More informationBusiness Agility () Dynamic ebusiness, RTE (Real-Time Enterprise) IT Web Services c c WE-SDS (Web Services Enabled SDS) SDS SDS Service-riented Architecture Web Services ( ) ( ) ( ) / c IT / Service- Service-
More informationHotspot JVM GC 엑셈컨설팅본부 /APM 팀김정태 개요 본문서는 Hotspot JVM 의 Garbage Collection 에대한기본적인동작방식과 Internal 한내용이포함되어있다. 본문내용을통해 WAS 의 Suspend 현상과 Application Thre
Hotspot JVM GC 엑셈컨설팅본부 /APM 팀김정태 개요 본문서는 Hotspot JVM 의 Garbage Collection 에대한기본적인동작방식과 Internal 한내용이포함되어있다. 본문내용을통해 WAS 의 Suspend 현상과 Application Thread, Garbage Collection Thread 간의경합에대해이해하고나아가특정환경에적합한
More information11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)
Java Program Performance Tuning ( ) n (Primes0) static List primes(int n) { List primes = new ArrayList(n); outer: for (int candidate = 2; n > 0; candidate++) { Iterator iter = primes.iterator(); while
More informationPowerPoint 프레젠테이션
Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING
More informationRuntime Data Areas 엑셈컨설팅본부 /APM 팀임대호 Runtime Data Area 구조 Runtime Data Area 는 JVM 이프로그램을수행하기위해할당받는메모리영역이라고할수있다. 실제 WAS 성능문제에직면했을때, 대부분의문제점은 Runtime Da
Runtime Data Areas 엑셈컨설팅본부 /APM 팀임대호 Runtime Data Area 구조 Runtime Data Area 는 JVM 이프로그램을수행하기위해할당받는메모리영역이라고할수있다. 실제 WAS 성능문제에직면했을때, 대부분의문제점은 Runtime Data Area 에서발생하는경우가많다. Memory Leak 이나 Garbage Collection
More informationthesis-shk
DPNM Lab, GSIT, POSTECH Email: shk@postech.ac.kr 1 2 (1) Internet World-Wide Web Web traffic Peak periods off-peak periods peak periods off-peak periods 3 (2) off-peak peak Web caching network traffic
More informationuntitled
Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.
More informationOracle Database 10g: Self-Managing Database DB TSC
Oracle Database 10g: Self-Managing Database DB TSC Agenda Overview System Resource Application & SQL Storage Space Backup & Recovery ½ Cost ? 6% 12 % 6% 6% 55% : IOUG 2001 DBA Survey ? 6% & 12 % 6% 6%
More informationSQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자
SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전
More information02 C h a p t e r Java
02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More information6주차.key
6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running
More informationTHE TITLE
Android System & Launcher Team 8 목차 Android 1) Android Feature 2) Android Architecture 3) Android 개발방법 4) Android Booting Process Dalvik 1) Dalvik VM 2) Dalvik VM Instance Application 1) Application Package
More informationMicrosoft Word - src.doc
IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...
More informationMicrosoft PowerPoint - 발표_090513_IBM세미나_IPTV_디디오넷_완료.ppt
신후랑 팀장, 디디오넷 (010-8752-4952, hrshin@dideonet.com) 05/20/2009 BIZ in a box - Solution for Enterprise IPTV 2 UNIX vs. x86 Non-x86 UNIX 2008 2007 0% Y/Y Total x86 2008 2007-25.3% Y/Y 0 200 400 600 800 3 Why
More informationMicrosoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx
To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse
More information목차 1. 개요 현상 문제분석 문제해결
이슈및장애 OutOfMemory 장애조치방법 2013. 11. 01 목차 1. 개요... 3 2. 현상... 3 3. 문제분석... 5 4. 문제해결... 13 2 1. 개요 OutOfMemory Exception 정의 Garbage Collector 가새로운 Object 를유지하기위해충분한메모리공간을확보하지못할때발생함. Vendor 사의 JVM 메모리모델방식을참조하여야함.
More informationPowerPoint Presentation
오에스아이소프트코리아세미나세미나 2012 Copyright Copyright 2012 OSIsoft, 2012 OSIsoft, LLC. LLC. PI Coresight and Mobility Presented by Daniel Kim REGIONAL 세미나 SEMINAR 세미나 2012 2012 2 Copyright Copyright 2012 OSIsoft,
More information슬라이드 1
-Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역
More informationJ2EE & Web Services iSeminar
9iAS :, 2002 8 21 OC4J Oracle J2EE (ECperf) JDeveloper : OLTP : Oracle : SMS (Short Message Service) Collaboration Suite Platform Email Developer Suite Portal Java BI XML Forms Reports Collaboration Suite
More informationvm-웨어-01장
Chapter 16 21 (Agenda). (Green),., 2010. IT IT. IT 2007 3.1% 2030 11.1%, IT 2007 1.1.% 2030 4.7%, 2020 4 IT. 1 IT, IT. (Virtualization),. 2009 /IT 2010 10 2. 6 2008. 1970 MIT IBM (Mainframe), x86 1. (http
More information1
04단원 컴퓨터 소프트웨어 1. 프로그래밍 언어 2. 시스템 소프트웨어 1/10 1. 프로그래밍 언어 1) 프로그래밍 언어 구분 각종 프로그래밍 언어에 대해 알아보는 시간을 갖도록 하겠습니다. 우리가 흔히 접하는 소프트웨어 들은 프로그래밍 언어로 만들어지는데, 프로그래밍 언어는 크게 2가지로 나눌 수 있습니다. 1 저급어 : 0과 1로 구성되어 있어, 컴퓨터가
More information1217 WebTrafMon II
(1/28) (2/28) (10 Mbps ) Video, Audio. (3/28) 10 ~ 15 ( : telnet, ftp ),, (4/28) UDP/TCP (5/28) centralized environment packet header information analysis network traffic data, capture presentation network
More information04 Çмú_±â¼ú±â»ç
42 s p x f p (x) f (x) VOL. 46 NO. 12 2013. 12 43 p j (x) r j n c f max f min v max, j j c j (x) j f (x) v j (x) f (x) v(x) f d (x) f (x) f (x) v(x) v(x) r f 44 r f X(x) Y (x) (x, y) (x, y) f (x, y) VOL.
More informationTablespace On-Offline 테이블스페이스 온라인/오프라인
2018/11/10 12:06 1/2 Tablespace On-Offline 테이블스페이스온라인 / 오프라인 목차 Tablespace On-Offline 테이블스페이스온라인 / 오프라인... 1 일반테이블스페이스 (TABLESPACE)... 1 일반테이블스페이스생성하기... 1 테이블스페이스조회하기... 1 테이블스페이스에데이터파일 (DATA FILE) 추가
More informationMicrosoft Word - 3부A windows 환경 IVF + visual studio.doc
Visual Studio 2005 + Intel Visual Fortran 9.1 install Intel Visual Fortran 9.1 intel Visual Fortran Compiler 9.1 만설치해서 DOS 모드에서실행할수있지만, Visual Studio 2005 의 IDE 를사용하기위해서는 Visual Studio 2005 를먼저설치후 Integration
More informationInterstage5 SOAP서비스 설정 가이드
Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service
More informationBMP 파일 처리
BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)
More information슬라이드 1
www.altsoft.co.kr www.clunix.com COMSOL4.0a Cluster 성능테스트 2010 년 10 월 클루닉스 / 알트소프트 개요 개요 목차 BMT 환경정보 BMT 시나리오소개 COMSOL4.0a MPP 해석실행조건 BMT 결과 COMSOL4.0a 클러스터분석결과 ( 메모리 / 성능 ) COMSOL4.0a 클러스터최종분석결과 -2- 개요
More information리뉴얼 xtremI 최종 softcopy
SSD를 100% 이해한 CONTENTS SSD? 03 04 05 06 07 08 09 10 11 12 13 15 14 17 18 18 19 03 SSD SSD? Solid State Drive(SSD) NAND NAND DRAM SSD [ 1. SSD ] CPU( )RAM Cache Memory Firmware GB RAM Cache Memory Memory
More informationWindows 8에서 BioStar 1 설치하기
/ 콘텐츠 테이블... PC에 BioStar 1 설치 방법... Microsoft SQL Server 2012 Express 설치하기... Running SQL 2012 Express Studio... DBSetup.exe 설정하기... BioStar 서버와 클라이언트 시작하기... 1 1 2 2 6 7 1/11 BioStar 1, Windows 8 BioStar
More informationMicrosoft PowerPoint - chap01-C언어개요.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을
More informationInteg
HP Integrity HP Chipset Itanium 2(Processor 9100) HP Integrity HP, Itanium. HP Integrity Blade BL860c HP Integrity Blade BL870c HP Integrity rx2660 HP Integrity rx3600 HP Integrity rx6600 2 HP Integrity
More information김기남_ATDC2016_160620_[키노트].key
metatron Enterprise Big Data SKT Metatron/Big Data Big Data Big Data... metatron Ready to Enterprise Big Data Big Data Big Data Big Data?? Data Raw. CRM SCM MES TCO Data & Store & Processing Computational
More informationMicrosoft Word - s.doc
오라클 백서 2010년 9월 WebLogic Suite를 위해 최적화된 오라클 솔루션 비즈니스 백서 개요...1 들어가는 글...2 통합 웹 서비스 솔루션을 통해 비즈니스 혁신 추구...3 단순화...4 기민한 환경 구축...5 탁월한 성능 경험...6 판도를 바꾸고 있는 플래시 기술...6 오라클 시스템은 세계 최고의 성능 제공...6 절감 효과 극대화...8
More informationMicrosoft PowerPoint - 6.pptx
DB 암호화업데이트 2011. 3. 15 KIM SUNGJIN ( 주 ) 비에이솔루션즈 1 IBM iseries 암호화구현방안 목차 목 차 정부시책및방향 제정안특이사항 기술적보호조치기준고시 암호화구현방안 암호화적용구조 DB 암호화 Performance Test 결과 암호화적용구조제안 [ 하이브리드방식 ] 2 IBM iseries 암호화구현방안 정부시책및방향
More informationMicrosoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx
To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with
More informationCloud Friendly System Architecture
-Service Clients Administrator 1. -Service 구성도 : ( 좌측참고 ) LB(LoadBlancer) 2. -Service 개요 ucloud Virtual Router F/W Monitoring 개념 특징 적용가능분야 Server, WAS, DB 로구성되어 web service 를클라우드환경에서제공하기위한 service architecture
More informationPCServerMgmt7
Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network
More informationMicrosoft PowerPoint - 알고리즘_1주차_2차시.pptx
Chapter 2 Secondary Storage and System Software References: 1. M. J. Folk and B. Zoellick, File Structures, Addison-Wesley. 목차 Disks Storage as a Hierarchy Buffer Management Flash Memory 영남대학교데이터베이스연구실
More informationUDP Flooding Attack 공격과 방어
황 교 국 (fullc0de@gmail.com) SK Infosec Co., Inc MSS Biz. Security Center Table of Contents 1. 소개...3 2. 공격 관련 Protocols Overview...3 2.1. UDP Protocol...3 2.2. ICMP Protocol...4 3. UDP Flood Test Environment...5
More informationADP-2480
Mitsubishi PLC 접속 GP 는 Mitsubishi FX Series 와통신이가능합니다. 시스템구성 6 7 8 GP-80 RS- Cable RS-C Cable FXN--BD FXN--BD 6 FX Series(FXS,FXN,FXN,FXNC, FXU) 7 FXS, FXN 8 FXN FX Series 는기본적으로 RS- 통신을하며, RS-/ converter
More informationPowerPoint 프레젠테이션
System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소
More informationOracle9i Real Application Clusters
Senior Sales Consultant Oracle Corporation Oracle9i Real Application Clusters Agenda? ? (interconnect) (clusterware) Oracle9i Real Application Clusters computing is a breakthrough technology. The ability
More information슬라이드 1
Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치
More informationMicrosoft PowerPoint - Tech-iSeminar_9iAS_OAS10g_PBT.ppt
Oracle 9iAS, OracleAS 10g 일반튜닝및문제해결 Getting the most out of MetaLink 오치영 한국오라클 ( 주 ) 제품지원실 목차 Performance Tuning 전고려사항 Performance Tuning Parameter 자주발견되는문제들 많은고객분들이 Oracle 9iAS 나 OAS 10g 를포함한각종 J2EE container
More information목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.
소프트웨어매뉴얼 윈도우드라이버 Rev. 3.03 SLP-TX220 / TX223 SLP-TX420 / TX423 SLP-TX400 / TX403 SLP-DX220 / DX223 SLP-DX420 / DX423 SLP-DL410 / DL413 SLP-T400 / T403 SLP-T400R / T403R SLP-D220 / D223 SLP-D420 / D423
More information4임금연구겨울-지상토론
지상토론 기업의 합리적 임금관리전략을 통한 위기극복 방안 박준성 교수 지난 1998년 외환위기시에도 임금연구 에서 경 주제발표 김강식 교수(한국항공대) 토 론 자 : 장상수 전무(삼성경제연구소) 최영미 이사(한국HP) 제위기시 임금관리 방향에 대해 논의(본지 1998년 봄호 참조)를 한 적이 있는 것으로 알고 있습니다만 10년전과 비교해 봤을 때 우리 노동시장은
More informationISP and CodeVisionAVR C Compiler.hwp
USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler
More informationOZ-LMS TM OZ-LMS 2008 OZ-LMS 2006 OZ-LMS Lite Best IT Serviece Provider OZNET KOREA Management Philosophy & Vision Introduction OZNETKOREA IT Mission Core Values KH IT ERP Web Solution IT SW 2000 4 3 508-2
More informationMicrosoft PowerPoint - 30.ppt [호환 모드]
이중포트메모리의실제적인고장을고려한 Programmable Memory BIST 2010. 06. 29. 연세대학교전기전자공학과박영규, 박재석, 한태우, 강성호 hipyk@soc.yonsei.ac.kr Contents Introduction Proposed Programmable Memory BIST(PMBIST) Algorithm Instruction PMBIST
More informationMicrosoft PowerPoint - 9iAS Perf Tuning.ppt
ORACLE 9iAS Performance Tuning Getting the most out of MetaLink 박준현 한국오라클 ( 주 ) 제품지원실 오늘세미나에서는 ORACLE 9iAS 를사용하시면서접하시게되는 performance 문제와관련하여어떻게접근을해야하는지와또한어떠한사항을고려해야하는지에대해초점을맞추어진행하도록하겠습니다. 그럼 ORACLE 9iAS
More informationi-movix 특징 l 안정성 l 뛰어난화질 l 차별화된편의성
i-movix 소개 2005 년설립 ( 벨기에, 몽스 ), 방송카메라제작 2005년 Sprintcam Live System 개발 2007년 Sprintcam Live V2 2009년 Sprintcam Live V3 HD 2009년 Sprintcam Vvs HD 2011년 Super Slow Motion X10 2013년 Extreme + Super Slow
More informationPowerPoint 프레젠테이션
@ Lesson 4 (Object) (Class) (Instance) (Method) (Constructor) Memory 1 UML 1 @ & 1 (Real World) (Software World) @ &.. () () @ & 2 (Real World) (Software World) OOA/ Modeling Abstraction Instantiation
More informationA Hierarchical Approach to Interactive Motion Editing for Human-like Figures
단일연결리스트 (Singly Linked List) 신찬수 연결리스트 (linked list)? tail 서울부산수원용인 null item next 구조체복습 struct name_card { char name[20]; int date; } struct name_card a; // 구조체변수 a 선언 a.name 또는 a.date // 구조체 a의멤버접근 struct
More information1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)
1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다. 1.1. 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 만별도로필요한경우도있어툴체인설치및설정에대해알아봅니다. 1.1.1. 툴체인설치 다음링크에서다운받을수있습니다.
More information(SW3704) Gingerbread Source Build & Working Guide
(Mango-M32F4) Test Guide http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History
More informationchap 5: Trees
5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경
More information시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1)
[ Version 1.3 ] Access Point,. Access Point IP 10.0.0.1, Subnet Mask 255.255.255.224, DHCP Client. DHCP Server IP IP,, IP 10.0.0.X. (Tip: Auto Sensing Straight, Cross-over.) step 1]. step 2] LAN. step
More informationJUNIT 실습및발표
JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected
More information품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]
품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ] 2014. 10. 목 차 I. Stack 통합테스트개요 1 1. 목적 1 II. 테스트대상소개 2 1. The Bug Genie 소개 2 2. The Bug Genie 주요기능 3 3. The Bug Genie 시스템요구사항및주의사항 5 III. Stack 통합테스트 7 1. 테스트환경
More informationInterstage4 설치가이드
Interstage Application Server V501 Operation Guide Internet 1 1 1 FJApache FJApache (WWW (WWW server) server) - - file file - - 2 2 InfoProviderPro InfoProviderPro (WWW (WWW server) server) - - file file
More informationOPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block
More informationChap7.PDF
Chapter 7 The SUN Intranet Data Warehouse: Architecture and Tools All rights reserved 1 Intranet Data Warehouse : Distributed Networking Computing Peer-to-peer Peer-to-peer:,. C/S Microsoft ActiveX DCOM(Distributed
More informationTTA Journal No.157_서체변경.indd
표준 시험인증 기술 동향 FIDO(Fast IDentity Online) 생체 인증 기술 표준화 동향 이동기 TTA 모바일응용서비스 프로젝트그룹(PG910) 의장 SK텔레콤 NIC 담당 매니저 76 l 2015 01/02 PASSWORDLESS EXPERIENCE (UAF standards) ONLINE AUTH REQUEST LOCAL DEVICE AUTH
More information<목 차 > 제 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
열차운행정보 승무원 확인시스템 구축 제 안 요 청 서 2014.6. 제 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.시운전 및 하자보증 10
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting Started 'OZ
More information슬라이드 1
마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***
More information15_3oracle
Principal Consultant Corporate Management Team ( Oracle HRMS ) Agenda 1. Oracle Overview 2. HR Transformation 3. Oracle HRMS Initiatives 4. Oracle HRMS Model 5. Oracle HRMS System 6. Business Benefit 7.
More informationsolution map_....
SOLUTION BROCHURE RELIABLE STORAGE SOLUTIONS ETERNUS FOR RELIABILITY AND AVAILABILITY PROTECT YOUR DATA AND SUPPORT BUSINESS FLEXIBILITY WITH FUJITSU STORAGE SOLUTIONS kr.fujitsu.com INDEX 1. Storage System
More informationPowerPoint 프레젠테이션
BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working
More information비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2
비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,
More information로거 자료실
redirection 매뉴얼 ( 개발자용 ) V1.5 Copyright 2002-2014 BizSpring Inc. All Rights Reserved. 본문서에대한저작권은 비즈스프링 에있습니다. - 1 - 목차 01 HTTP 표준 redirect 사용... 3 1.1 HTTP 표준 redirect 예시... 3 1.2 redirect 현상이여러번일어날경우예시...
More informationRemote UI Guide
Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................
More informationInstall stm32cubemx and st-link utility
STM32CubeMX and ST-LINK Utility for STM32 Development 본문서는 ST Microelectronics 의 ARM Cortex-M 시리즈 Microcontroller 개발을위해제공되는 STM32CubeMX 와 STM32 ST-LINK Utility 프로그램의설치과정을설명합니다. 본문서는 Microsoft Windows 7
More information리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.
3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2. 3Rabbitz Book 애플리케이션파일다운로드하여압축파일을풀고복사합니다. 3. 3Rabbitz Book 실행합니다.
More informationThe Self-Managing Database : Automatic Health Monitoring and Alerting
The Self-Managing Database : Automatic Health Monitoring and Alerting Agenda Oracle 10g Enterpirse Manager Oracle 10g 3 rd Party PL/SQL API Summary (Self-Managing Database) ? 6% 6% 12% 55% 6% Source: IOUG
More informationTEL:02)861-1175, FAX:02)861-1176 , REAL-TIME,, ( ) CUSTOMER. CUSTOMER REAL TIME CUSTOMER D/B RF HANDY TEMINAL RF, RF (AP-3020) : LAN-S (N-1000) : LAN (TCP/IP) RF (PPT-2740) : RF (,RF ) : (CL-201)
More information.
SysMaster for WAS 2015. 09. Ⅰ Ⅱ Ⅲ Ⅳ WAS Agent 등록 WAS Agent 설정 WAS 기동과연동 Ⅰ 설치순서 SysMaster 5 다운로드 Agent 설치파일다운로드 1. Ⅳ 장에서설명한 Master 설치파일을동일하게다운로드진행 (Agent 설치파일도 Master 설치파일에포함 ) 3/36 설치화면 1. 관리자모드로실행필요 2.
More informationMicrosoft PowerPoint - JBossASTunning4BP.ppt
JBoss Performance Tunning byj 목 차 I. Basics 1. 성능튜닝의목적 II. JBoss AS 의성능 Factors 1. 성능튜닝개요 2. Application 3. 웹레이어 4. EJB 레이어 5. Database 6. 보안 7. Logging 8. 클러스터링 9. JVM III. 로드테스팅 Hints IV. 튜닝방법 V. references
More information메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for
메일서버등록제(SPF) 인증기능적용안내서 (Exchange 2003 - Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for Exchange 2016 년 6 월 - 1 - 목 차 I. 개요 1 1. SPF( 메일서버등록제)
More informationRVC Robot Vaccum Cleaner
RVC Robot Vacuum 200810048 정재근 200811445 이성현 200811414 김연준 200812423 김준식 Statement of purpose Robot Vacuum (RVC) - An RVC automatically cleans and mops household surface. - It goes straight forward while
More information비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리
ArcGIS for Desktop 10.4 Single Use 설치가이드 Software: ArcGIS for Desktop 10.4 Platforms: Windows 10, 8.1, 7, Server 2012, Server 2008 ArcGIS for Desktop 10.4 시스템 요구사항 1. 지원 플랫폼 운영체제 최소 OS 버전 최대 OS 버전 Windows
More informationLab 3. 실습문제 (Single linked list)_해답.hwp
Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.
More informationthesis
CORBA TMN Surveillance System DPNM Lab, GSIT, POSTECH Email: mnd@postech.ac.kr Contents Motivation & Goal Related Work CORBA TMN Surveillance System Implementation Conclusion & Future Work 2 Motivation
More informationMstage.PDF
Wap Push June, 2001 Contents About Mstage What is the Wap Push? SMS vs. Push Wap push Operation Wap push Architecture Wap push Wap push Wap push Example Company Outline : (Mstage co., Ltd.) : : 1999.5
More informationAnalyst Briefing
. Improve your Outlook on Email and File Management iseminar.. 1544(or 6677)-3355 800x600. iseminar Chat... Improve your Outlook on Email and File Management :, 2003 1 29.. Collaboration Suite - Key Messages
More informationApache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축
Apache2 + Tomcat 5 + JK2 : 2004-11-04 Release Ver. 1.0.0.1 Email : ykkim@cabsoftware.com Apache JK2 ( )., JK2 Apache2 JK2. 3 - JK2, Tomcat -.. 3, Stress ( ),., localhost ip., 2. 2,. Windows XP., Window
More informationTTA Verified : HomeGateway :, : (NEtwork Testing Team)
TTA Verified : HomeGateway :, : (NEtwork Testing Team) : TTA-V-N-05-006-CC11 TTA Verified :2006 6 27 : 01 : 2005 7 18 : 2/15 00 01 2005 7 18 2006 6 27 6 7 9 Ethernet (VLAN, QoS, FTP ) (, ) : TTA-V-N-05-006-CC11
More informationIntro to Servlet, EJB, JSP, WS
! Introduction to J2EE (2) - EJB, Web Services J2EE iseminar.. 1544-3355 ( ) iseminar Chat. 1 Who Are We? Business Solutions Consultant Oracle Application Server 10g Business Solutions Consultant Oracle10g
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started (ver 5.1) 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting
More information