Microsoft Word - 5Jeus_Performance_Tuning-cover.doc

Size: px
Start display at page:

Download "Microsoft Word - 5Jeus_Performance_Tuning-cover.doc"

Transcription

1 Whitepaper JEUS Performance Tuning Copyrightc 2001 TmaxSoft Co.,Ltd. All Right Reserved.

2 Contents I. JEUS Performance Tuning... 3 II. OS Tuning... 4 File Descriptor... 4 TCP parameters ) 리슨큐의길이 ) 재전송지연 ) CLOSE_WAIT 시간 ) 연결지속시간 ) 슬로우스타트... 7 III. Network Tuning... 8 IV. JVM Tuning... 9 Java Heap Size & Garbage Collection... 9 HotSpot 옵션 V. JEUS Tuning Engine Container와 Engine 매핑 JDBC Connection Pool Security Off VI. EJB Tuning Local Method Invocation EJB Bean Clustering EJB Bean Pooling InitCaching (Entity Bean Only) Fetch Size (Entity Bean Only) Home Method (Entity Bean Only) Method Classification (Entity Bean Only) ENGINE 타입선택하기 (Entity Bean Only) SUBENGINE 타입선택하기 (CMP Bean Only) Fast Deploy & EJBCompiler VII. Servlet/JSP Tuning Session Routing JDBC Connection Pooling WebT Connection Pooling Servlet/JSP Auto Reloading JEUS Performance Tuning 1

3 JSP Batch Compiler WebServer와의연결 VIII. JEUS Application Tuning JEUS Performance Tuning 2

4 I. JEUS Performance Tuning 시스템의성능을향상시키기위해서는여러가지사항을고려해야된다. 하드웨어의사양을높이는방법, 네트웍튜닝, OS의환경변수튜닝, JVM 환경변수를튜닝하는방법, 그리고어플리케이션프로그램을튜닝하는방법등등어느하나소홀히할수있는것이없다. 성능향상은어느특정부분만을튜닝하여얻는것이라기보다는, 시스템이운영되는여러환경을전체적으로이해하고고려해야만원하는성능을얻을수있는것이다. 본문서에서는다음과같은튜닝관점에대하여다루려한다. Operation System Network JVM JEUS - 공통적인부분 JEUS EJB Engine JEUS Servlet Engine Application 위에열거한요소들은각분야의전문지식이필요하니튜닝을위해수정을할시에는반드시각분야의전문가와상의하여결정하도록한다. JEUS Performance Tuning 3

5 II. OS Tuning File Descriptor Unix 에서는각사용자의 Account 가정해진수의 file descriptor를가진다. ulimit 라는 command를사용하여리소스 limit 을살피고고쳐보자. Reource limit 는한쌍의값을가지고있고그값은 current limit (soft) 과 maximum limit (hard) 를표시한다. Hard limit 는 /etc/system 에서고칠수있고그후엔반드시새로부팅시켜야한다. Note : Soft limit 는고치지않도록한다. 이값은제우스에는반영되지않는다. Hard limit 을높이려면루트권한을가진계정을가지고있어야한다 Solaris 의경우 $ ulimit $ set rlim_fd_max 4096 /* hard limit */ File Descriptor 와관련된문제점들 1. Too many open files 2. Broken pipe error 3. ClassNotFound JEUS Performance Tuning 4

6 TCP parameters 1) 리슨큐의길이 TCP 에서는정해진크기의큐를두어서즉시처리할수없는접속을그큐에넣어서관리한다. 이런큐를보통리슨큐또는 backlog 라고한다. 트래픽이한꺼번에몰리게되었을때이큐의크기가작을경우접속자를차단하는경우가생기게된다. 리슨큐를증가시키면처리할수있는접속보류자수를늘리게되지만큐가클수록더많은메모리가필요하다는것을알아두어야한다. -Solaris 의경우 $ ndd set /dev/tcp tcp_conn_req_max_q linux 2.0 의경우 include/linux/socket/h 파일에서 SOMAXCONN의기본값을 1024 으로바꾸고커널을다시컴파일하면된다. 2) 재전송지연 TCP 에서는정해진시간내에세그먼트확인응답을받지못할경우손실된것으로가정하고다시다른복사본을전송한다. 이때기본으로정해진시간은 200ms 인데지연시간이보통큰인터넷의경우에는기본값이작아같은패킷을여러번전송하는경우가생길수있다. 재전송횟수를확인하는방법을확인하여재전송지연값을조절하도록한다. -Solaris 재전송횟수확인절차 $ netstat s 위의명령으로나온결과중 tcpoutdatasegs 와 tcpretranssegs, 그리고 tcpoutdatabytes 와 tcpretransbytes 를비교하여세그먼트또는바이트의 20% 이상이재전송되는경우라면재전송지연값을높이도록한다. JEUS Performance Tuning 5

7 재전송지연값설정 $ ndd set /dev/tcp tcp_rexmit_interval_initial ) CLOSE_WAIT 시간 이값은소켓이닫힌이후에다른클라이언트가이소켓을사용할수있을때까지기다리는시간을말한다. 너무작게설정되어있을경우에세그먼트가늦게도착하면정상적인데이터를받지못할수도있고오히려너무크게설정되어있을경우에는접속량이줄어드는결과를낳을수도있다. 남아있는세그먼트가없을정도로만값을설정하는것이좋다. Solaris 의경우기본값이 4분으로설정되어있는데접속자가많을경우에는성능에큰저하를가져올수있기때문에 60초정도로설정하는것이바람직하다. -Solaris $ ndd set /dev/tcp tcp_time_wait_interval Solaris or 2.6 ~ $ ndd set /dev/tcp tcp_close_wait_interval ) 연결지속시간 TCP 의접속에서는한쪽이다운이되는경우다른한쪽이접속을시도하기전까지는다운된쪽의상태를확인할방법이없다. 실제로클라이언트가정상적으로접속을종료하지않는경우가많기때문에서버측에서는리소스가낭비될수있다. 클라이언트측의접속상태확인을일정시간동안마다하게되는데그간격을조절함으로써성능을향상시킬수있다. 기본시간간격은보통 2시간에서 8시간정도로되어있는데클라이언트가많을경우에는줄여서설정해야한다. -Solaris $ ndd set /dev/tcp tcp_keepalive_interval JEUS Performance Tuning 6

8 5) 슬로우스타트 슬로우스타트는수신측이최대처리할수있는데이터양까지한개의세그먼트부터다시두개그리고네개, 이런식으로보내는방식이다. 장점은최적의송신량을알수있다는점이지만접속횟수가많고지속시간이짧은웹환경에서는오히려느릴수도있다. 윈도우를사용하는클라이언트에게슬로우스타트를사용하게되면문제가생길수있는데윈도우클라이언트는한개의패킷이아닌두개의패킷을처음부터기다리기때문이다. 한개의패킷이보내진후클라이언트는아무런응답없이두번째의패킷을기다리게되며서버측에서는첫번째보낸패킷의응답을기다리고있기때문에종료시간이되고나서야두번째의패킷전송이시작되게되고따라서많은시간이필요하게된다. 이런이유로슬로우스타트의처음패킷을 2개부터시작하게해야할필요성이있다. -Solaris $ ndd set /dev/tcp tcp_slow_start_initial 2 슬로우스타트의최대치역시조절해줄필요가있는데이는기본값이요즘의데이터전송량에비해너무작기때문이다. -Solaris $ ndd set /dev/tcp tcp_cwnd_max JEUS Performance Tuning 7

9 III. Network Tuning 네트워크자원이모자라성능이저하되는경우가있을수있다. 특히많은클라이언트의접속을허용하는웹서버의경우에는네트워크의성능은아주중요하다. 네트워크의상태를잘파악하고혹시네트워크가서버의처리량을못따라가는것이아닌지확인할필요가있다. 충분한 Bandwidth 를확보하는것은아주중요하다. 클라이언트가많을경우많은접속을허용할수있어야하고서버역시다른 Tier 에있는 Database등을접속해야하므로이모두를소화할수있는 Bandwidth를가지고있어야한다. 충분한 Bandwidth 를가지고있는경우에여전히네트워크가제우스서버의성능을저하시킨다고판단되는경우네트워크하드웨어나소프트웨어에문제가있는지확인해본다. 네트워크전문가와상의하여이부분의문제점을찾아해결하도록한다. 위의자원들을다확인하고나서여전히문제점이있다면네트워크인프라의구조를다시살펴보아야한다. 디자인이안정적이지않다면접속량과처리량이많을경우에문제가야기될수있다. 시스템을더늘리는방법으로일반적으로해결될수있으나심한경우에는인프라구조를다시디자인해야할수도있다. JEUS Performance Tuning 8

10 IV. JVM Tuning Java Heap Size & Garbage Collection Java Heap 에는자바프로그램의 object 들이있는곳이다. 이안에는활동중인 Object 가있을수도있고또는아무도 point 를안해 Garbage 가된 Object 들도있다. Heap Size 의중요성은 Garbage Collection 과밀접한관계가있다. 크기가큰경우에는 Garbage Collection 이오래걸리는반면그빈도는적게된다. 반대로크기가작은경우에는 Garbage Collection 은짧은반면그빈도는늘어나게된다. 가장이상적인 Heap Size 는 Garbage Collection 에쓰이는시간을최소화하는크기라할수있다. 서버어플리케이션의경우에는기본값이충분치않을수있으므로재설정이필요하다. Garbage Collection 을수행시걸리는시간이너무크지않다면시스템의 RAM 크기를고려해될수있는한큰값을설정하도록한다. Heap 의크기는 1024의배수로 1MB 이상설정해야한다. 일반적으로최소치와최대치를같은값으로설정하는것이권장된다. 프로세서를늘린경우에는이값을다시높게설정해야한다. 전체 Garbage Collection 을할때시간이 3-4초이상걸리는경우에는 Size 를줄일필요성이있다. 또한 Garbage Collection 이끝난후에 Heap 에할당된메모리가항상 85 % 이상이되는경우에도 size 를줄이는것이바람직하다. -Xverbosegc 옵션은매 Garbage Collection 의정보를모니터하게해준다. 이때의정보를이용하여적절한 Heap Size 를계산해볼수있다. -Xverbosegc:file=/tmp/gc$$.out 옵션을주면 Garbage Collection 의정보를파일로저장한다. $ java.. Xms512m Xmx512m -Xms 옵션은 Heap 의최소치를설정한다. -Xmx 옵션은 Heap 의최대치를설정한다. Heap Size 가너무작을경우 OutOfMemoryError 가발생할수도있 JEUS Performance Tuning 9

11 다. 이런경우에도 Heap Size 를늘려주어야한다. 1.3 Java HotSpot JVM 은성능향상을위해 Generational Collection 방식을사용하고있다. Object들을 Generation 별로나누어각 Generation 공간이찬경우 Live Object 들만을다음 Generation 으로옮기고나머지들은 Garbage Collection 을하는방식이다. 대부분의 Object 들이생성된직후에 Garbage 가되기때문에향상된성능을가져온다. Generation 별로공간이있기때문에그크기역시지정해줄수있다. 전체 Heap Size 와비례하게설정을하고프로세서를늘린경우에는이값들의재설정이필요하다. $ java.. XX:NewSize=128m XX:MaxNewSize=128m XX:SurvivorRatio=8 -XX:NewSize 옵션은 New generation 의 heap size 를설정한다. 전체 Heap 사이즈의 25% 정도로설정하는것이보통이다. -XX:MaxNewSize 옵션은 New generation 의 heap size 최대값을설정한다. -XX:SurvivorRatio 옵션은 New generation 안에서 Eden 과 Survivor 사이의비율을설정한다. HotSpot 옵션 HotSpot 에는많은종류의옵션들을설정해줄수있는데이중에서성능을향상시키는데도움이되는몇가지를살펴보도록하겠다. -oss 이옵션은 Java Thread Stack Size 를설정할때쓰인다. 이값을 2MB 이상으로설정하는경우성능의저하를초래할수있다. -ss 이옵션은 Native Thread Stack Size 를설정할때쓰인다. 이값역시 2MB 이상으로설정하는경우성능의저하를초래할수있다. -Xnoclassgc 이옵션은클래스에대한 Garbage Collection 을끄는데쓰인다. 이옵션을설정한경우에는더큰 Heap Size 가필요하다. JEUS Performance Tuning 10

12 V. JEUS Tuning 본장에서는 JEUS시스템전체적인 Performance향상방법을다루고자한다.. 다룰내용은아래와같다. Engine Container와 Engine 매핑 JDBC Connection Pool Local Transaction Optimization Security Off Engine Container와 Engine 매핑 JEUS 시스템은 EJB 엔진, Servlet 엔진, JMS 엔진의세가지엔진을 Engine Container라는단위로자유로이설정할수있다. 바꿔말하면하나의 Engine Container는하나의 JVM에매핑되므로엔진을 JVM 단위로설정이가능하다는얘기이다. 이것은전체시스템의성능및리소스관리차원에서매우중요하다. 여러엔진을같은 JVM에할당할시얻는성능및리소스이용측면에서의장점을들자면 Local Method Invocation 기능을이용하여프로세스간통신을로컬메쏘드콜형태로바꾸어성능을향상시킬수있다. 복수개의엔진이하나의 JVM에할당되므로, 각엔진을각 JVM 에할당하여운영하는것보다시스템리소스를적게잡고서도운영이가능하다. JEUS Performance Tuning 11

13 JDBC Connection Pool 데이터베이스에 JDBC Connection을생성하는작업은상당히느린작업이다. Connection Pool을이용하지않는에플리케이션의경우 JDBC Connection을맺고끊고하는작업을반복한다면이는성능을떨어뜨린다. JEUS는 Connection Pool을제공함으로써물리적 JDBC Connection을끊지않고, 논리적 JDBC Connection만끊게함으로서실제데이터베이스와의물리적 JDBC Connection을재사용하게해준다. JDBC Connection Pool 기술은앞서말한 JDBC Connection 생성작업을거의없앰으로서시스템의성능을향상시킨다. JeusMain.xml의 <DataSource> 항목에 DataSource에대한환경을설정할수있는데, 파라미터를설정할때, 몆가지사항을고려해야한다. ( 파라미터의자세한설명은 JEUS JDBC Guide를참조하기바란다.) 먼저, <MinPoolSize> 와 <MaxPoolSize> 를동시접근유저수를고려하여적절히잡아야된다. Pool Size가너무작다면동시접근유저가 Connection을얻기위해블록킹되는시간이길어져성능을떨어뜨리고, 너무크게잡는다면 Connection등리소스의낭비뿐아니라불필요한서버프로세스가데이터베이스에살아있어성능을저하시킨다. Pool Size는원칙적으로동시에 Connection Pool에 Access하여 Connection을얻어서데이터베이스에작업하려고하는쓰레드의개수만큼을잡는것이좋다. 두번째로, DataSource타입중상대적으로부하가큰 XA DataSource의사용필요성을고려해보아야한다. 복수개의데이터베이스를이용하는데분산트랜잭션이필요없거나, 단일데이터베이스만사용하는경우라면 DataSource 타입을 XADataSource가아닌 ConnectionPool DataSource를이용하여성능향상을꾀할수있겠다. JEUS Performance Tuning 12

14 Local Transaction Optimization 기본적으로 JEUS 트랜잭션시스템은 XADataSource 를기반으로동작한다. XADataSource 로부터얻어진 XAConnection 을사용하는복수개의작업을트랜잭션으로묶어진행하게되면이트랜잭션이이기종데이터베이스에대해작업을하고, 복수개의 JEUS Transaction Manager 관리영역을통과한다하더라도모두하나의 global 트랜잭션을묶여져처리된다. 이러한동작방식은다양하고복잡한어플리케이션프로그램에대해트랜잭션환경을제공하지만, 실제어플리케이션프로그램들은대개하나의데이터베이스인스턴스에대해작업을수행하고그트랜잭션의실행영역또한 JEUS Transaction Manager 하나의관리영역을벗어나지않는것이보통이다. ( 하나의 JEUS Transaction Manager 는하나의 JVM을관리영역으로한다 ) 이경우 JEUS 트랜잭션시스템에서는 XAConnection 이아닌 Pooled- Connection 을이용하여보다효율적으로트랜잭션을수행한다. 트랜잭션수행을 XADataSource로하여야하는이유는트랜잭션이복수개의데이터베이스에접근하였을때이트랜잭션의 commit 시점에서이들데이터베이스인스턴스들과 2 phase commit 을진행하여야하기때문이다. 만약트랜잭션이하나의데이터베이스인스턴스와만작업을진행한다면하나의데이터베이스에대한복수개의 branch들을하나의 branch로묶는 branch joining과 1 phase commit 프로토콜에의해서 commit 메시지한번으로 commit 이처리될수있다. Local Transaction Optimization 에서는이보다한걸음더나가트랜잭션을 Global 트랜잭션이아닌 Local 트랜잭션으로처리하는것이다. 어플리케이션은트랜잭션의시작과종료를선언하고트랜잭션진행중복수개의 Connection을얻어작업을진행하는등 Global 트랜잭션과똑같이작업을수행하지만 JEUS Connection Pool 이 JEUS Transaction Manager의도움을받아트랜잭션의진행을추적해가며하나의 PooledConnection 이계속사용되도록 Connection을별도로관리한다. 이렇게하면 commit 과정에서 local 트랜잭션 commit을사용할수있을뿐만아니라 XAConnection 관리와관련된추가적메시지교환을하지않아도되어성능을보다향상시킬수있다. Local Transaction Optimization의개념은 J2EE 와 Connector Architecture 에서제시된바있다. JEUS 트랜잭션시스템의 Local Transaction Optimization 은이루고자하는바는같지만그구현방 JEUS Performance Tuning 13

15 식이다르다. Connector Architecture 에서는하나의트랜잭션이 local 트랜잭션으로처리가가능한가를 Connector 시스템이자동으로감지하지만 JEUS 트랜잭션시스템에서는어플리케이션시스템관리자가 Local Transaction Optimization 용 Connection Pool을따로설정하고이 pool을기반으로트랜잭션작업이이루어져야만한다. 이렇게구현한이유는관리자가이러한설정을해줌으로써 Local Transaction Optimization 처리가훨씬간단하고효율적으로구현될수있으며이러한설정이매우간단하게이루어질수있기때문이다. Security Off 시스템운영중 JEUS에서제공하는보안기능을사용하지않는경우 JeusMain.xml 파일의 <Engine Container> 별로설정하는 <SecuritySwitch> 항목을 false로설정하는것이좋다. 이것이 true로설정되어있으면엔진내부의작업이나클라이언트가요청한작업을엔진에서처리할때인증 (Authentication) 과권한체크 (Authorization) 작업이빈번히일어난다. 이러한보안관련작업은 JEUS 시스템에오버헤드를주므로 JEUS제공보안기능을이용하지않는경우에는이를사용하지않도록설정하는것이좋다. JEUS Performance Tuning 14

16 VI. EJB Tuning 본장에서는 JEUS EJB 엔진에서의성능향상을위한방법을다루어보도록하겠다. 앞으로다룰 JEUS EJB 튜닝방법의종류를아래에열거하였다. 모듈간통신방법관련 Local Method Invocation 클러스터링관련 EJB Bean Clustering Pooling 관련 EJB Bean Pooling Entity Bean 관련 InitCaching (Entity Bean Only) Fetch Size (Entity Bean Only) Home Method (Entity Bean Only) Method Classification (Entity Bean Only) Engine 타입선택하기 (Entity Bean Only) Subengine 타입선택하기 (CMP Bean Only) Deploy 관련 Fast Deploy & EJBCompiler 각각의의미를명확히이해하여구축하려하는시스템이최적화된성능을내도록하자. JEUS Performance Tuning 15

17 Local Method Invocation 이전에는한 Bean에서같은엔진내의다른 Bean의메쏘드를호출할경우, 이는엔진밖의클라이언트가호출하는경우와마찬가지로 RMP 또는 RMI./IIOP 형태의프로토콜을이용하여메쏘드콜을해야만했었다. 이런형태의메쏘드콜은리소스를많이사용할뿐만아니라속도도느리다. Jeus-ejb-dd_< 모듈명 >.xml 파일의 <islocalinvocationoptimized> 항목을 true로설정하여같은엔진내의 Bean간의호출을로컬메쏘드콜로바꾸어성능을향상시킬수있다. 메쏘드호출이되어질 Bean에이항목을설정하도록한다. EJB 메쏘드콜은기본적으로 Call-By-Value이지만 jeus-ejb-dd_< 모듈명 >.xml 파일의 <islocalinvocationoptimized> 항목이 true로설정된 Bean을호출할경우는 Local Method Call이되어 Call-By- Reference로동작함을주의하여야한다. 파라미터가레퍼런스형태로동작함을인지하고주의깊게사용하여야한다. 구체적으로 JEUS내에서 Local Method Invocation이가능한통신경우를살펴보자. Servlet < > EJB Servlet 엔진과 EJB 엔진이동일한 JVM에위치하고 Servlet에서 EJB Bean을메쏘드콜할경우. EJB < > EJB 서로다른엔진이동일한 JVM에있고, 각엔진내의 EJB Bean간의통신의경우. 또는같은엔진내의두개의 EJB Bean간이통신 JMS < > Message-Driven Bean JMS Server로부터메시지을받아동작하는 Message-Driven Bean의경우메시지교환이 Local Method Call로이루어질수있다. JEUS Performance Tuning 16

18 Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info /> <beanlist> <stateless> <ejb-name>test</ejb-name> <export-port>0</export-port> <export-name>testapp</export-name>... <islocalinvocationoptimized> true </islocalinvocationoptimized>... </stateless> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 17

19 EJB Bean Clustering 하나의 Bean을여러개의 Engine에동시에 Deploy하여클러스터링할수있다. Jeus-ejb-dd_< 모듈명 >.xml 파일의 <clustering> 항목에클러스터링정보를설정할수있다. Bean을클러스터링함으로써, 클라이언트요청을클러스터링된 Bean에부하를분산시켜동시접근유저수를증가시키고, 리소스를효율적으로사용할수있게한다.. 또한 failover 옵션을설정함으로써 Fail-Over 기능이되게할수도있다. EJB Bean Clustering 기능을이용하여성능 (Performance), 확장성 (Scalibility), 안정성 (Stability) 그리고가용성 (Availability) 모두를향상시킬수있다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info> <module-name>module1</module-name> </module-info> <beanlist> <stateless> <ejb-name>bean1</ejb-name> <export-port>0</export-port> <export-name>name1</export-name> <export-iiop>false</export-iiop>... <clustering> <cluster-name>activestublink</cluster-name> <cluster-export-name>name1</cluster-export-name> <cluster-export-name>name2</cluster-export-name> <home-clustered>true</home-clustered> </clustering>... </stateless> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 18

20 EJB Bean Pooling 풀링은클라이언트의요청을처리할때인스턴스및쓰레드의생성오버헤드를피하고이를재사용하여리소스사용효율을높힘으로써시스템성능을향상시키는기술이다. EJB 모듈을 Deploy할때, jeusejb-dd_< 모듈명 >.xml 파일에아래세가지값을설정하여 EJB Bean별로풀링의크기, 증가단위및 Resizing 주기를설정할수있다. <bean-pool> EJB Bean의풀링최소값, 최대값, 증가단위, Resizing 주기를설정한다. <connect-pool> EJB Object 의풀링최소값, 최대값, 증가단위, Resizing 주기를설정한다. <thread-pool> 특정 Bean을동시에수행할수있는쓰레드의최소값, 최대값, 증가단위, Resizing 주기를설정한다. <bean-pool> <connect-pool> 은인스턴스재사용을위한풀링설정이다. 클라이언트에서 EJB Bean을생성하고삭제하는작업을하는경우 <pool-max> 를크게잡는것이성능향상을위해좋다. 하지만 <thread-pool> 은엄밀히말해쓰레드의재사용설정이아니다. 쓰레드의생성및소멸은 RMI 런타임내에서제어를하기때문에 JEUS EJB 엔진에서는이를제어할수없다. 다만 RMI 런타임에서시작된쓰레드가 EJB 엔진내의 EJB Bean을수행할때동시에수행될수있는쓰레드의개수및 Resizing 주기를 EJB Container에서제어할수있는데이에대한설정을 <thread-pool> 항목에해주면된다. <thread-pool> 과는달리 <bean-pool>, <connect-pool> 에서의풀링할최대값 <pool-max> 은다른의미를가진다. <bean-pool>, <connectpool> 에서설정한 <pool-max> 값의 EJB Bean 인스턴스, EJB Object 인스턴스가풀에서모두사용되어풀이비어있는경우, 이후에추가적인클라이언트요청이오면사용된인스턴스가풀에반환되는것을기다리지않고추가적인인스턴스를만들어제공한다. 하지만사용되어진추가적인인스턴스는풀에반환되지않고버려진다. Stateless Session Bean의경우 <bean-pool> 설정만을하는데, 이는 JEUS Performance Tuning 19

21 <connect-pool>, <thread-pool> 도동일한값으로설정됨을의미한다. Stateless Session Bean은그특성상 EJB Bean 인스턴스의풀링개수가 EJB Object 인스턴스개수및동시수행가능한쓰레드의개수와같다. 때문에 Stateless Session Bean의경우세가지중하나인 <beanpool> 항목의설정만으로세가지의풀링설정을하는것이다. 위의항목을설정할때, 전체 Bean의개수를고려하여그숫자를상대적으로결정하여야한다. <thread-pool> 를너무작게잡으면 CPU 사용이효율적이지않게된다. <thread-pool> 를너무크게잡으면유저요청이많을때, 시스템에동시에수행되는 thread가많아져스케쥴링및리소스할당으로인한부하가커져전체적인성능이떨어질수있으므로설정값에주의를요한다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info> <module-name/> </module-info> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>... <bean-pool> <pool-min>2</pool-min> <pool-max>4</pool-max> <resizing-period>600000</resizing-period> </bean-pool> <capacity>100000</capacity> <connect-pool> <pool-min>2</pool-min> <pool-max>4</pool-max> <resizing-period>600000</resizing-period> </connect-pool> <thread-pool> <pool-min>2</pool-min> <pool-max>4</pool-max> <pool-step>1</pool-step> <resizing-period>600000</resizing-period> </thread-pool>... </container-managed> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 20

22 InitCaching (Entity Bean Only) 데이터베이스의특정테이블의모든레코드가빈번히쓰이고, 그크기가크지않다면 jeus-ejb-dd_< 모듈명 >.xml 에 <init-caching> 옵션을 true로설정함으로써성능을향상시킬수있다. Deploy가끝난후요청이들어올때해당하는 Entity Bean이메모리에존재하지않는경우 Container는요청을처리하기전에테이블의레코드를 Entity Bean에로딩하는작업을한다. 이옵션을설정하면모듈의 Deploy 시점에테이블의모든레코드를 Entity Bean에캐쉬함으로써, 실제서비스를수행할때데이터베이스의데이터를 Entity Bean에로딩하는작업을없애성능을향상시킨다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info /> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>.... <init-caching>true</init-caching>... </container-managed> </beanlist> </jeus-ejb-dd> Fetch Size (Entity Bean Only) 데이터베이스테이블의레코드를 Entity Bean에로딩할필요가있을경우 JDBC Connection을이용하여데이터를가져온다. 이때 jeus-ejb-dd_< 모듈명 >.xml 파일에 <fetch-size> 항목에적절한값을설정하여 JDBC를통해한번에가져오는레코드의크기를결정할수있다. 이수치를적절히설정하여 Throughput을높힘으로써성능을향상시킬수있다. 보통의경우그크기를 10으로하는것을권장한다. JEUS Performance Tuning 21

23 Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info /> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>.... <fetch-size>10</fetch-size>... </container-managed> </beanlist> </jeus-ejb-dd> Home Method (Entity Bean Only) Entity Bean의어떤메쏘드가특정 Bean 인스턴스에해당하는메쏘드가아니고, Bean의공통적으로쓰이는성격이라면이를 Home Method 로만드는것을고려해본다. 비즈니스메쏘드를 Home Method로만들면메쏘드수행시 Container에서 EJBObject 할당없이 Anonymous Entity Bean을할당하여메쏘드를수행함으로써약간의성능향상을꾀할수있다. JEUS Performance Tuning 22

24 Method Classification (Entity Bean Only) Entity Bean의비즈니스메쏘드는 Persistence 측면에서두가지종류로나눌수있다. Entity Bean의값을변경시키는메쏘드와 Entity Bean의값을변경하지않는메쏘드가그두가지종류이다. Entity Bean의값을변경하지않는대표적인경우가 Entity Bean의값을읽는 (Read Only) 메쏘드이다. jeus-ejb-dd_< 모듈명 >.xml 파일의 <nonmodifying-methods> 항목에메쏘드를추가함으로써 Read Only 메쏘드라고명시할수있다. 한트랜잭션이끝나기직전에, Container는이트랜잭션과관련된모든 Entity Bean을조사하여 Read Only로설정되지않는메쏘드가한번이상수행된 Entity Bean에대해서만 ejbstore() 메쏘드를호출해준다. Entity Bean에 Read Only 메쏘드를명확히명시하여데이터베이스에불필요한작업을줄임으로써성능을높힐수있다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info /> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>.... <non-modifying-methods> getdescription() </non-modifying-methods> <non-modifying-methods> getprice() </non-modifying-methods>... </container-managed> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 23

25 ENGINE 타입선택하기 (Entity Bean Only) Entity Bean 이표현하는데이터베이스의테이블이이용되는형태를파악하여세가지중하나의엔진타입설정함으로써시스템성능을높힐수있다. 데이터이용형태를파악할때아래의사항을고려하자. 동시접근유저는많은가? 데이터읽기위주의작업이많은가? 아니면데이터수정작업이많은가? 데이터접근경합 (Contention) 이많은가? 트랜잭션처리의시간은얼마나되는가? 엔진타입선택시위에서열거한사항들을고려한다. 아래는각엔진타입이어느경우에적당한지를설명하였다. EJB Bean 클러스터링을하지않는경우는 EXCLUSIVE_ACCESS가적당하다. SINGLE_OBJECT와 MULTIPLE_OBJECT는 EJB Bean을클러스터링할경우에만의미가있다. EXCLUSIVE_ACCESS 데이터베이스특정테이블의레코드를시스템내의유일한한개의 EJB Bean이캐쉬하여트랜잭션시작시 EJB Bean의 ejbload() 작업을줄임으로서성능을향상시키는옵션이다. 동시접근유저가적은경우면서, 데이터캐쉬기능을최대한활용하여빠르고효율적인시스템구성을원할경우이옵션이적당하다. SINGLE_OBJECT EXCLUSIVE_ACCESS는 EJB Bean 인스턴스를이용할수있는트랜잭션이특정순간 (Snapshot) 단하나밖에없어서확장성 (Scalibility) 에문제가있다. SINGLE_OBJECT는동시접근유저가많아 EJB Bean 클러스터링을구성하여확장성 (Scalibility) 을높이려할경우에적당하다. 데이터베이스특정테이블의레코드를시스템내의클러스터링된여러개의 EJB Bean이표현하고있다. 그래서트랜잭션시작시매번 ejbload() 작업을해야하므로각각의트랜잭션작업만을보았을때는 Access Path가길어져 EXCLUSIVE_ACCESS에비해서는비효율적이다. 하지만동시에진행될수있는트랜잭션수을높힐수있다. JEUS Performance Tuning 24

26 MULTIPLE_OBJECT 이옵션은 SINGLE_OBJECT와같이클러스터링을이용하여 EJB Bean을구성하는경우에사용된다. 다른점은특정레코드를표현하는 EJB Bean 인스턴스가다른트랜잭션에할당된상태에서다른트랜잭션이같은 EJB Bean 인스턴스를요구할경우동일레코드를표현하는새로운 EJB Bean 인스턴스를만들어트랜잭션에할당하는방법이다. 데이터경합 (Contention) 이많아트랜잭션이동일한데이터에대한 Access가많을경우 SINGLE_OBJECT에비해 Concurrency를더높힐수있다. 트랜잭션길이가길어서하나의트랜잭션이진행되는동안다른트랜잭션이블록킹되는일이많아지는경우이옵션을설정하여 Concurrency를높이는것이좋다. 하지만데이터에대한작업성격이읽기보다는주로수정작업이라면데이터베이스의데이터접근경합 (Contention) 으로인하여 Deadlock 상황이발생할수있으므로주의를요한다. SINGLE_OBJECT보다더복잡한객체관리가요구되기때문에엔진오버헤드가크다는것도염두에두어야한다. 정리하자면클러스터링기능으로 Scalibility을높혀야하는데 SINGLE_OBJECT에비해동시에처리되는트랜잭션수를늘리려할경우, 동일한데이터에대한읽기작업많으면서데이터경합이심한상황이라면이옵션이적당하다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info> <module-name/> </module-info> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>... <engine-type>exclusive_access</engine-type>... </container-managed> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 25

27 SUBENGINE 타입선택하기 (CMP Bean Only) 이옵션은 CMP에서만사용될수있다. Jeus-ejb-dd_< 모듈명 >.xml 파일의 <subengine-type> 에아래두가지옵션중하나를선택하여넣을수있다. 업무성격을파악하여주된데이터접근방법을알아내어옵션을선택하도록한다. ReadLocking Bean의성격이 Read 작업이많은경우 Shared Read를허용하여동시에데이터에 Access할수있도록한다. Read 작업이많은경우 Concurrency를높혀성능을향상시킬수있다. WriteLocking Bean의성격이 Write 작업이많은경우 Lock Promotion 등으로인한 Deadlock 상황을방지해줄필요가있다. Write작업이많을경우데이터를읽을때, Write Lock을잡고작업을진행하게하여, Concurrency는낮추지만 Deadlock 발생빈도를낮춤으로써전체적인성능향상을꾀할수있다. Jeus-ejb-dd_< 모듈명 >.xml 파일의설정예는아래와같다. <jeus-ejb-dd> <module-info> <module-name/> </module-info> <beanlist> <container-managed> <ejb-name>pkproduct</ejb-name> <export-port>0</export-port> <export-name>pkproductapp</export-name>... <engine-type>single_object</engine-type> <subengine-type>writelocking</subengine-type>... </container-managed> </beanlist> </jeus-ejb-dd> JEUS Performance Tuning 26

28 Note : 엔진타입및서브엔진타입선택에대한기준을시스템성격에따라아래그림으로표현하였다. 동시접근유저수 작다 많다 데이터접근경합많다. 트랜잭션시간길다. 아니다 그렇다 Exclusive Access Single Object Multiple Object Read 가많다 Write가많다. Read 가많다 Write가많다. Read Write Read Write locking locking locking locking JEUS Performance Tuning 27

29 Fast Deploy & EJBCompiler 이방법은이전의튜닝옵션과다르게런타임성능향상이목적이아니고, Deploy과정을단축시켜부팅을빠르게하는방법이다. EJB 모듈로구성된시스템을생각해보자. 엔진이부팅될때마다 EJB 모듈을 Deploy해야되는데, 보통의경우 EJBMain.xml의 <ModuleList> 항목에 EJB 모듈을추가하여엔진이부팅될때, 모듈이 Deploy되도록설정을한다. 모듈이 Deploy되는과정을살펴보면, 먼저 EJB Object와 Home Object 그리고 Skeleton, Stub등의코드를생성한후이를컴파일하고, 이모듈의 Container 인스턴스를하나만들어서이를 EJBServer 에등록하는과정을거치게된다. 위의모듈 Deploy과정은최초한번은반드시수행되어야된다. 이를이후에다시 Deploy하는데, 모듈수정이없는경우 ( 좀더정확히말하자면, Home과 Remote의인터페이스가변하지않는경우 ) Deploy 과정중에서 EJB Object와 Home Object의코드생성및컴파일과정은다시할필요가없다. 이러한경우 ( 모듈의 Deploy과정이전체적으로한번수행되고, 그이후 Home과 Remote 인터페이스가변하지않는경우 ) EJBMain.xml의 <FastDeploy> 항목을 true로설정하면엔진은 EJB Object와 Home Object의코드생성및컴파일과정을생략하고 Deploy작업을진행한다. <FastDeploy> 옵션은실제로시스템의운영중 Performance에는영향을미치지는않는다. 하지만운영중엔진을새로이부팅시킬필요가있을때, 빠른시간내에모듈을 Deploy하여엔진의부팅시간을단축시킬수있다. 특히많은 EJB 모듈을가지는시스템의경우이옵션의사용을권장한다. 실제로수백개의 EJB 모듈로구성된시스템의경우부팅작업은상당히오랜시간동안진행된다. 시스템을운영하다보면특정 EJB 모듈을수정할상황이발생한다. 이경우모듈을수정하고클래스를컴파일한다. 그다음으로모듈의 Redeploy 작업이필요하다. EJB 모듈의수정작업에서 EJB모듈의 Home과 Remote의인터페이스가변했다면, Deploy 작업중 EJB Object와 Home Object의코드생성및컴파일과정이반드시이루어 JEUS Performance Tuning 28

30 져야된다. 이런경우 EJB 모듈의 Deploy 에는세가지방법이있다. 첫째, ejbadmin 을사용하여엔진을내리지않고모듈을 undeploy한후다시 deploy하면된다. Deploy시 f (FastDeploy) 옵션을사용하지않아야한다. 둘째, 엔진을내리고 EJBMain.xml의 <FastDeploy> 옵션을 false로하여부팅시코드생성및컴파일과정이일어나도록한다. 셋째, ejbcompiler를이용해 EJB Object와 Home Object의코드생성및컴파일과정을거치게하고 EJBMain.xml의 <FastDeploy> 옵션을 true로설정하여부팅을한다. 첫번째방법은 Runtime에 EJB 모듈을 Redeploy하는방법이다. 두번째와세번째방법은다음엔진부팅시에수정한모듈의 Redeploy작업을하는방법이다. 다음엔진부팅시에수정한모듈의 Redeploy를원할경우두번째방법은비효율적이다. EJBCompiler를이용하는세번째방법으로부팅시간을단축하는것이더효율적이다. 정리하자면 EJBCompiler는 EJB Object와 Home Object의코드생성및컴파일과정을수행하는툴이다. 이를이해하고적절히사용하면부팅시간을단축시킬수있다. EJBCompiler 사용법은아래와같다. %JEUS_HOME%\bin\ejbcompiler ejbcompiler command usage : ejbcompiler [engine name] [modulename modulename::beanname] [options] options -xml : use ejb-jar-modulename.xml and jeus-ejbdd_modulename.xml as deployment descriptor -v : verbose JEUS Performance Tuning 29

31 VII. Servlet/JSP Tuning 본장에서는 JEUS Servlet 엔진에서의성능향상을위한방법을다루어보도록하겠다. 앞으로다룰 JEUS Servlet 엔진의튜닝방법종류를아래에열거하였다. Session Routing Handler Thread Pool JSP Batch Compiler Servlet/JSP Auto Reloading Connection Pooling 관련 JDBC Connection Pool WebT Connection Pool WebServer와의연결관련 WebToB Apache Session Routing Servlet 표준의 Session은세션정보를웹컨테이너가관리해주고 Cookie에는단지 Session Key만이실리게되어기존의 Cookie 방식에비해네트웍사용량을크게줄여성능을향상시킨다. Session Routing 기법은 JEUS 웹컨테이너의웹서버로서 WebToB나 Apache를사용하고웹서버에다수의 JEUS 웹컨테이너가클러스터링되었을경우사용할수있는기법이다. 기본알고리즘은 Apache Web Server와 Jserv servlet engine 사이에서제공하는 load balancing 기법과동일하다. 세션객체를최초로생성한 JEUS 웹컨테이너는 session 구분자인 Cookie에자신의구분자 (servlet engine JEUS Performance Tuning 30

32 identifier) 를삽입한다. 웹서버는이 Cookie 값을조사하여세션객체가생성된 JEUS 웹컨테이너로클라이언트요청을 routing해준다. Session Routing 기법은동일한클라이언트가같은웹컨테이너에서서비스되도록하여클러스터링된웹컨테이너간통신량을줄여준다. 아래는 container.xml 파일에 SessionRouting 을설정하는예이다. <DistributedSession SessionRouting="true"> <SessionServer ServerName="session1" BackupServerName="session2" InitCapacity="1" MaxCapacity="3" IncrementRate="1" TimeoutMilliSec="10000"> </SessionServer> </DistributedSession> Note : <Failover에관하여 > JEUS 시스템에서는 Web Container Cluster 내의 session 정보를효율적으로관리하고 Web Container간 load balancing 및 failover 를보장하기위해 Session Manager 를도입하였다. 하나의 Web Container 에서 session 이생성되면해당 Web Container 는이 session을자신의 Session Cache 에저장하고설정된 Session Manager에게 session 정보를전달한다. JEUS는이러한방법으로특정엔진이나노드가장애발생했을경우에도세션을유지시켜준다. JEUS Performance Tuning 31

33 JDBC Connection Pooling JEUS 에서 JDBC Connection Pool 을이용하는방법은두가지가있다. JEUS 시스템에서데이터베이스로의 connection 관리를담당하는 JDBC 표준의 DB Connection Pool은 Naming & Directory 서버에등록되어 JEUS Cluster 어디에서는접근가능하고 JEUS Transaction Manager와연동하여트랜잭션관련정보를관리하는등다양한기능을제공한다. 클라이언트가이를이용하기위해서는 JeusMain.xml에설정을하고 JNDI API를이용해접근한다. 하지만만약어플리케이션이 HTML, Servlet, JSP 등으로만구성된 presentation 중심의구조에간단한데이터베이스작업만을수행한다면 Web Container 전용의 Connection Pool을사용할수있다. 이 Connection Pool은 JDBC 표준에서제시하는 Connection Pooling 메커니즘을따르지않고보다가볍고간단한구조를사용하여 JEUS 시스템의무게를줄이고, 불필요한리소스의낭비를막는다. 클라이언트가이를이용하기위해서는 container.xml에설정을하고 JDBC DriverManager로로딩한후사용한다. 아래에 container.xml 에 DB Connection Pool 설정예를보였다. <DBConnectionPool ConnectionPoolID="sharedOraclePool" ConnectionPoolType="shared" " DriverClassName="oracle.jdbc.driver.OracleDriver" ConnectionArguments="user=username;password=password" CloseLongActiveConnection="true" MaxActiveTimeSecs="60"> <DBPoolControl InitCapacity="2" MaxCapacity="10" IncrementRate="2" MaxIdleTimeSecs="300"/> </DBConnectionPool> JEUS Performance Tuning 32

34 WebT Connection Pooling JEUS에서 WebT 라이브러리를이용해 TMAX를 Access할수있다. 이럴경우 JDBC Connection Pooling과마찬가지방법으로 TMAX와의 Connection을풀링하여이용할수있다. 이에대한장점은 JDBC Connection Pooling과같다. 아래에 container.xml에있는 WebT Connection Pooling 설정예를보였다. <WebtConnectionPool LogLevel= info LogFileName= c:\jeus30\logs\webt.log > <WebtConnectionGroup ConnectionGroupID= tmax1 TmaxAddress= TmaxPort= 8888 InitCapacity= 10 MaxCapacity= 40 IncrementRate= 2 /> <WebtConnectionGroup ConnectionGroupID= tmax2 TmaxAddress= TmaxPort= 8888 InitCapacity= 10 MaxCapacity= 40 IncrementRate= 2 /> </WebtConnectionPool> Servlet/JSP Auto Reloading 실제 WEB-BASED 시스템을운영하다보면프리젠테이션이나비즈니스로직을수정할경우가발생한다. 이럴경우특정모듈에수정을가하고엔진을리부팅하는것은시스템의 Availibility측면에서바람직하지않다. JEUS는 Servlet/JSP Auto Reloading기능을제공하여모듈수정시엔진리부팅을하지않고해당모듈이속해있는 Context만다시 Reload를하게할수있다. 모듈이있는디렉토리밑에있는하위모든디렉토리를모니터링하는쓰레드가있어모듈수정으로인한파일의변경이일어났는지를감시하고, 변경이있다면해당 Context를다시 Reload한다. 이기능은모듈수정이빈번한경우매우유용한기능이다. 하지만 Auto Reloading을위한디렉토리의파일감시작업도엔진에는 JEUS Performance Tuning 33

35 오버헤드가된다. 시스템의수정이없는경우라면, 그리고안정되고빠르게운영하려한다면 Auto Reloading을위한오버헤드를없애주는것이성능향상에도움이될것이다. 이러한경우 Container.xml을아래와같이설정하여 Auto Reloading 기능을사용하지않게할수있다. <Container MonitoringIntval="300" SessionMonitoringIntval="120" RedirectStdOut="true" RedirectStdErr="true"> <ContextGroup GroupName="MyGroup" GroupDocBase="webapps" SharedSession="true" SessionTimeoutMinute="20" PrintErrorToBrowser="true">.... <Context ContextName="Examples" ContextPath="/examples" DocBase="examples" EnableJSP="true" AutoReload="false"> </Context>.... </ContextGroup> </Container> JEUS Performance Tuning 34

36 JSP Batch Compiler 개발자가 JSP파일을작성하고이 JSP파일을실제운영시스템에 Deploy했다고하자. Servlet 엔진은최초이 JSP로의요청이있을때이 JSP파일을파싱하고이를 Servlet코드로바꾸어준다. 그다음 Servlet코드를컴파일하고이를클래스로더가로딩하게한후인스턴스를하나만들고 service() 메쏘드를실행시킨다. 이후두번째요청부터는만들어진인스턴스의 service() 메쏘드를부르기만하면된다. 위에서보듯이 JSP의최초서비스절차는상당히많은절차를거치기때문에클라이언트입장에서는비교적긴시간을기다려야결과를볼수가있다. 만일 JSP의수정이빈번하거나그양이많다면, 위에서언급한절차가엔진에오버헤드를줄뿐아니라클라이언트응답시간도길어진다. JEUS는 JSP Batch Compiler를제공하여 JSP파싱, Serlvet코드생성그리고생성된코드컴파일과정을미리작업하도록하여, JSP로의최초요청시엔진오버헤드방지및성능개선을하도록하였다. JSP Batch Compiler는 ContextGroup 또는 Context 단위로해당단위내에있는 JSP파일을 Servlet 클래스파일형태로만들어준다. 아래 JSP Batch Compiler 의사용법을간략히적어놓았다. %JEUS_HOME%\bin\jspc JEUS Web Container version: jspc -e engine_name [-g grpname [-c ctxname]] [-noxml] [-f container_xml_path] - pre-compile the jsp files of context ctxname of contextgroup grpname - if ctxname omitted, entire contexts of grpname will be pre-compiled - if ctxname and grpname omitted, entire contexts of engine_name will be pre-compiled -noxml configuration by.conf file -g context group name to compile -c context name to compile -f config_file configuration file name -h this message -v version information JEUS Performance Tuning 35

37 WebServer 와의연결 JEUS의 Web Service는 HTTP요청을 WebServer에서받고이를파싱하여 Servlet이나 JSP 요청의경우 JEUS의 Web Container에넘겨주는구조로되어있다. 많은유저를빠르고효율적이게처리하기위하여 JEUS는크게두가지의아키텍쳐를수용하고있다. 첫쨰, ThreadPool을사용하여클라이언트요청이들어왔을때, 매번새로운쓰래드생성오버헤드를줄이고쓰래드를재사용하게하였다. ThreadPool 크기의설정은 Web Container의성능에매우영향이크다. 둘째, WebServer와 Web Container사이에 Queue를두어서 ThreadPool에서당장처리할수없는클라이언트요청을잠시 Queue 에두고쓰레드가 ThreadPool에반환되는시점에처리가되도록하였다. 이렇게함으로써동시에많은클라이언트요청을수용하여 Availibility를높혔다. 앞에서설명한 OS의 TCP레벨에서도 Backlog 크기를늘려주는작업도같은목적으로하는설정이다. 이두가지의설정을동시에고려해주어야하겠다. JEUS Performance Tuning 36

38 JEUS에서사용할수있는 HttpServer는크게세가지가있다. 각각의경우에대하여간단한설정예를아래에보였다. JEUS 에내장된 HttpServer 와의연결 <Connection ListenerType="HttpListener" Port="8088" ServerAccessControl="false"> <ThreadPool MinThread="2" MaxThread="10" ChangeRate="2" MaxIdleTime="300" MaxWaitQueue="4" /> </Connection> Apache Server 와의연결 <Connection ListenerType="ApacheListener" Port="8007" ServerAccessControl="false"> <ThreadPool MinThread="2" MaxThread="10" ChangeRate="2" MaxIdleTime="300" MaxWaitQueue="4" /> </Connection> WebToB 와의연결 <Connection ListenerType="WebtobListener" Port="9900" WebServerAddress=" " ConnectionPortNum="2" ServerAccessControl="false"> <ThreadPool MinThread="10" MaxThread="10" ChangeRate="2" MaxIdleTime="300" MaxWaitQueue="4" /> </Connection> JEUS Performance Tuning 37

39 VIII. JEUS Application Tuning 이제까지시스템의성능을향상시키기위한 OS, Network, JVM 튜능방법및 JEUS 엔진튜닝방법에관하여다루었다. 여기에추가하여 Application 튜닝도빠질수없는부분이다. Application이성능을고려하여만들어지지않았다면위에서언급한모든부분을모두고려하였다할지라도시스템의성능이어떻게나올지는뻔한일이다. Application 튜닝에관련된부분은본문서에서다루기에는그범위가너무넓고다양해서구체적으로다루지는않겠다. 개략적인몇가지만을다루고자하므로이외의내용은관련문서를참조하기바란다. Application 디자인과정부터성능을생각하라. Application 튜닝은개발이모두끝나고나서하는것만이아니다. 디자인부터잘못된 Application은시스템에치명적인 bottleneck 이될수있을뿐아니라쉽게고치기도어렵다. 복잡한코딩으로성능을향상시킬수있는경우보다도간단한디자인하나가성능을놀랄만큼향상시키는예를많이볼수있다. 디자인단계부터성능을생각하라. Design Pattern을적용하라. Design Pattern이란시스템디자인시에자주발생하는문제들에대한 재사용가능한해결책 이라할수있다. 이는경험많은소프트웨어엔지니어들로부터동일한해법들을이름을부여하고디자인을추상적으로정리한것이다. 이미검증되고적용한사례가많은것이므로이를이용하는것은극히추천할만하다. 엔지니어입장에서는효율적이고유용성이좋은디자인에대한해법을짧은시간에익히고얻어이를적용하면자신이디자인하고있는시스템의안정성과성능을높일수있다. Design Pattern에는성능에크게도움을주는내용도많이있다. 특히근래에는 J2EE아키텍쳐에서적용할수있는 J2EE Pattern 들이많이나오고있다. 예를들어모듈간의통신시데이터를 Coarse-Grained 하게주고받아 Network Traffic을줄인다든지, Bean간의 Coupling이높은경우에 Dependent Object를고려하여디자인한다든지, 비동기적 (Asynchronous) 으로작업이가능한 JEUS Performance Tuning 38

40 경우 Message-Driven Bean Façade를사용한다등등 성능향상에도움이되는검증된디자인이많이있다. 단지성능뿐아니라유지보수를위해서그리고확장성및재사용을위해서 Design Pattern의적용을적극활용하라. J2EE Architecture를이해하라. 너무도당연한이야기이겠지만 Servlet 아키텍처를충분히이해하지않고 Servlet을작성하는것, EJB 아키텍처를충분히이해하지않고 EJB Bean을작성하는것은상당한위험한일이아닐수없다. 예를들어 Servlet을작성하는데 Thread Safty를제어하는일을 SingleThreadModel을이용하여처리한다면 Thread Safty는확실히지켜지겠지만성능은매우낮게나올것이다. EJB 작성시 Stateless Bean으로작성해도되는일을 Stateful Bean 으로작성하거나 Entity Bean으로작성하면불필요한리소스낭비가되고낮은성능을낼것이다. 원래의 J2EE 아키텍쳐가지향하는바를제대로이해하지못하고이를이용하면효율적인시스템이구축되지않을것이다. 데이터베이스 SQL 튜닝을고려하라. 시스템구축시데이터베이스를사용하는경우는비일비재하다. 데이터베이스를 Access하는 Application의경우 Table 디자인을어떻게하는가, Index를어떻게만드는가, SQL문장을어떻게작성하는가에따라엄청난속도차이를보이는상황을자주볼수있다. 데이터베이스그리고 SQL의데이터베이스내처리과정등의이해가깊어질수록성능이좋은시스템을구축할수있다. J2EE 아키텍쳐에는효율적인리소스관리, Concurrency관리, 트랜잭션관리등성능을위한뛰어난개념들이많이있다. 그리고 JEUS는이 J2EE 아키텍쳐를수용하고또추가적인많은성능향상관련기능들을제공하고있다. 하지만 J2EE 아키텍쳐그리고 JEUS는요술방망이가아니다. 이 Platform위에올라가는 Application을어떻게작성하는가? 그리고시스템이운용되는환경을어떻게구성해주어야하는가? 라는질문에대한답은넓은부분에있다는것을알수있었다. 다양한튜닝포인트를고려하고이를위한꾸준한노력을할수록효율적이고빠른시스템을얻을수있을것이다. JEUS Performance Tuning 39

[Brochure] KOR_TunA

[Brochure] KOR_TunA LG CNS LG CNS APM (TunA) LG CNS APM (TunA) 어플리케이션의 성능 개선을 위한 직관적이고 심플한 APM 솔루션 APM 이란? Application Performance Management 란? 사용자 관점 그리고 비즈니스 관점에서 실제 서비스되고 있는 어플리케이션의 성능 관리 체계입니다. 이를 위해서는 신속한 장애 지점 파악 /

More information

Intro to Servlet, EJB, JSP, WS

Intro 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 information

No Slide Title

No Slide Title J2EE J2EE(Java 2 Enterprise Edition) (Web Services) :,, SOAP: Simple Object Access Protocol WSDL: Web Service Description Language UDDI: Universal Discovery, Description & Integration 4. (XML Protocol

More information

Microsoft Word - Jeus_System_Architecture.doc

Microsoft Word - Jeus_System_Architecture.doc Whitepaper JEUS Syetem Architecture Copyrightc 2001 TmaxSoft Co.,Ltd. All Right Reserved. Contents JEUS System 2 I. JEUS System 운영 1. JEUS Manager 4 2. Naming & Directory Server 5 3. Security Server 5

More information

C# Programming Guide - Types

C# 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 information

JVM 메모리구조

JVM 메모리구조 조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN

More information

untitled

untitled 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

[Brochure] KOR_LENA WAS_

[Brochure] KOR_LENA WAS_ LENA Web Application Server LENA Web Application Server 빠르고확장가능하며장애를선대응할수있는운영중심의고효율차세대 Why 클라우드환경과데이터센터운영의노하우가결집되어편리한 관리기능과대용량트랜잭션을빠르고쉽게구현함으로고객의 IT Ownership을강화하였습니다. 고객의고민사항 전통 의 Issue Complexity Over

More information

튜닝및모니터링 HP JVM 튜닝옵션

튜닝및모니터링 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

Interstage4 설치가이드

Interstage4 설치가이드 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 information

Microsoft PowerPoint - JBossASTunning4BP.ppt

Microsoft 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

Business 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 information

Slide 1

Slide 1 J2EE 어플리케이션문제해결방법론 차의중 IBM Korea WebSphere Field Technical Sales Support ejcha@kr.ibm.com 선결조건 문제해결에임하는자세 3 침착하라 -심호흡 -Operating은천천히, 또박또박 혼자해결하려하지마라 -물어보라 -찾아보라 -확인하라 필요한최소한의인원만을곁에두어라 -파트별엔지니어, 어플리케이션개발자

More information

Windows Server 2012

Windows Server  2012 Windows Server 2012 Shared Nothing Live Migration Shared Nothing Live Migration 은 SMB Live Migration 방식과다른점은 VM 데이터파일의위치입니다. Shared Nothing Live Migration 방식은 Hyper-V 호스트의로컬디스크에 VM 데이터파일이위치합니다. 반면에, SMB

More information

1

1 1 1....6 1.1...6 2. Java Architecture...7 2.1 2SDK(Software Development Kit)...8 2.2 JRE(Java Runtime Environment)...9 2.3 (Java Virtual Machine, JVM)...10 2.4 JVM...11 2.5 (runtime)jvm...12 2.5.1 2.5.2

More information

J2EE & Web Services iSeminar

J2EE & 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 information

Amazon EBS (Elastic Block Storage) Amazon EC2 Local Instance Store (Ephemeral Volumes) Amazon S3 (Simple Storage Service) / Glacier Elastic File Syste (EFS) Storage Gateway AWS Import/Export 1 Instance

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft 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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 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 information

경제통상 내지.PS

경제통상 내지.PS CONTENTS I 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 II 38 39 40 41 42 43 III 46 47 48 49 50 51 52 53 54 55 56 57 58 59 IV 62 63 64 65 66 67 68 69 V

More information

°æÁ¦Åë»ó³»Áö.PDF

°æÁ¦Åë»ó³»Áö.PDF CONTENTS I 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 II 38 39 40 41 42 43 III 46 47 48 49 50 51 52 53 54 55 56 57 58 59 IV 62 63 64 65 66 67 68 69 V

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Synergy EDMS www.comtrue.com opyright 2001 ComTrue Technologies. All right reserved. - 1 opyright 2001 ComTrue Technologies. All right reserved. - 2 opyright 2001 ComTrue Technologies. All right reserved.

More information

untitled

untitled 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 information

BY-FDP-4-70.hwp

BY-FDP-4-70.hwp RS-232, RS485 FND Display Module BY-FDP-4-70-XX (Rev 1.0) - 1 - 1. 개요. 본 Display Module은 RS-232, RS-485 겸용입니다. Power : DC24V, DC12V( 주문사양). Max Current : 0.6A 숫자크기 : 58mm(FND Size : 70x47mm 4 개) RS-232,

More information

JDBC 소개및설치 Database Laboratory

JDBC 소개및설치 Database Laboratory JDBC 소개및설치 JDBC } What is the JDBC? } JAVA Database Connectivity 의약어 } 자바프로그램안에서 SQL 을실행하기위해데이터베이스를연결해주는응용프로그램인터페이스 } 연결된데이터베이스의종류와상관없이동일한방법으로자바가데이터베이스내에서발생하는트랜잭션을제어할수있도록하는환경을제공 2 JDBC Driver Manager }

More information

Chap7.PDF

Chap7.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 information

Interstage5 SOAP서비스 설정 가이드

Interstage5 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 information

Windows 8에서 BioStar 1 설치하기

Windows 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 information

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

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

Apache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축

Apache2 + 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 information

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

More information

Class Loader 엑셈컨설팅본부 /APM 팀김다운 개요 클래스 loader 는자바의기능중하나로써런타임에클래스파일을찾고로딩하는임무를맡는다. WAS 마다 Class Loading 의방식에조금씩차이가있으며, Intermax 설치시에 classpath 옵션을 WAS 에추

Class Loader 엑셈컨설팅본부 /APM 팀김다운 개요 클래스 loader 는자바의기능중하나로써런타임에클래스파일을찾고로딩하는임무를맡는다. WAS 마다 Class Loading 의방식에조금씩차이가있으며, Intermax 설치시에 classpath 옵션을 WAS 에추 Class Loader 엑셈컨설팅본부 /APM 팀김다운 개요 클래스 loader 는자바의기능중하나로써런타임에클래스파일을찾고로딩하는임무를맡는다. WAS 마다 Class Loading 의방식에조금씩차이가있으며, Intermax 설치시에 classpath 옵션을 WAS 에추가함으로서 Class loading 을한다. 이에클래스 loader 의로딩메커니즘을이해하고

More information

Corporate PPT Template

Corporate PPT Template Tech Sales Consultant Oracle Corporation What s New in Oracle9iAS Forms? Why upgrade Oracle Forms to the WEB? Agenda Oracle9i Forms Web Oracle9i Forms Oracle9i Forms Oracle9i Forms What s NEW in Oracle

More information

6주차.key

6주차.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 information

The Self-Managing Database : Automatic Health Monitoring and Alerting

The 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 information

KYO_SCCD.PDF

KYO_SCCD.PDF 1. Servlets. 5 1 Servlet Model. 5 1.1 Http Method : HttpServlet abstract class. 5 1.2 Http Method. 5 1.3 Parameter, Header. 5 1.4 Response 6 1.5 Redirect 6 1.6 Three Web Scopes : Request, Session, Context

More information

Voice Portal using Oracle 9i AS Wireless

Voice Portal using Oracle 9i AS Wireless Voice Portal Platform using Oracle9iAS Wireless 20020829 Oracle Technology Day 1 Contents Introduction Voice Portal Voice Web Voice XML Voice Portal Platform using Oracle9iAS Wireless Voice Portal Video

More information

歯Writing_Enterprise_Applications_2_JunoYoon.PDF

歯Writing_Enterprise_Applications_2_JunoYoon.PDF Writing Enterprise Applications with Java 2 Platform, Enterprise Edition - part2 JSTORM http//wwwjstormpekr Revision Document Information Document title Writing Enterprise Applications

More information

PCServerMgmt7

PCServerMgmt7 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 information

J2EE Concepts

J2EE Concepts ! Introduction to J2EE (1) - J2EE Servlet/JSP/JDBC iseminar.. 1544-3355 ( ) iseminar Chat. 1 Who Are We? Business Solutions Consultant Oracle Application Server 10g Business Solutions Consultant Oracle10g

More information

기술자료

기술자료 1 쪽중 1 쪽 WebLogic Server 8.1 Tutorials 03 - 리소스 (JDBC, JMS 등 ) 설정 본문서에서는 MedRec 애플리케이션을디플로이하고서비스하기위해서필요한 WebLogic Server 의리소스들을설정하는방법에대하여설명할것이다. 1. JDBC(Java Database Connectivity) Connection Pool 과 Data

More information

WebSphere Platform 하의 개발가이드

WebSphere Platform 하의 개발가이드 WebSphere Application Server 성능향상을위한가이드 J2EE WG PlatSIG 의 WAS 성능요소에대한질의응답 Final Version 1.0 2002.11.20 목차 1. EJB Container 2. Deployment Descriptor 설정 3. JAR/WAR/EAR Packaging and Packaging size 4. 트랜잭션유형

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

Intra_DW_Ch4.PDF

Intra_DW_Ch4.PDF The Intranet Data Warehouse Richard Tanler Ch4 : Online Analytic Processing: From Data To Information 2000. 4. 14 All rights reserved OLAP OLAP OLAP OLAP OLAP OLAP is a label, rather than a technology

More information

1217 WebTrafMon II

1217 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 information

Microsoft PowerPoint - 1_이우진.pptx

Microsoft PowerPoint - 1_이우진.pptx Administration 이우진대리 Solution Engineer Solution Engineer 다우기술 Agenda AS Introduction WAS 구성 Installation 기본 Production o Tuning Monitoring Q / A EAP Introduction Community Project Community & Enterprise

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 1 2 3 4 5 6-2- - - - - - -3- -4- ( Knowledge Cube, Inc. ) // www.kcube.co.kr -5- -6- (KM)? - Knowledge Cube, Inc. - - Peter Drucker - -7- KM Context KM Context KM Context KM Context KM Context KM KM KM

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

Microsoft PowerPoint - 30.ppt [호환 모드]

Microsoft 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 information

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

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

More information

교육2 ? 그림

교육2 ? 그림 Interstage 5 Apworks EJB Application Internet Revision History Edition Date Author Reviewed by Remarks 1 2002/10/11 2 2003/05/19 3 2003/06/18 EJB 4 2003/09/25 Apworks5.1 [ Stateless Session Bean ] ApworksJava,

More information

Microsoft PowerPoint - o8.pptx

Microsoft PowerPoint - o8.pptx 메모리보호 (Memory Protection) 메모리보호를위해 page table entry에 protection bit와 valid bit 추가 Protection bits read-write / read-only / executable-only 정의 page 단위의 memory protection 제공 Valid bit (or valid-invalid bit)

More information

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 : HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 : ios 3.0 이상 - 콘텐츠형식 : MP4 (H264,AAC ), MP3 * 디바이스별해상도,

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id=entitymanagerfactory class=org.springframework.orm.jpa.localentitymanagerfactorybean p:persistenceunitname= JPA 와 Hibernate - 스프링의 JDBC 대신에 JPA를이용한 DB 데이터검색작업 - JPA(Java Persistence API) 는자바의 O/R 매핑에대한표준지침이며, 이지침에따라설계된소프트웨어를 O/R 매핑프레임워크 라고한다. - O/R 매핑 : 객체지향개념인자바와관계개념인 DB 테이블간에상호대응을시켜준다. 즉, 객체지향언어의인스턴스와관계데이터베이스의레코드를상호대응시킨다.

More information

<3035303432365FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

<3035303432365FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770> 개 요 홈페이지 해킹 현황 및 사례 홈페이지 개발시 보안 취약점 및 대책 주요 애플리케이션 보안 대책 결 론 참고자료 [부록1] 개발 언어별 로그인 인증 프로세스 예제 [부록2] 대규모 홈페이지 변조 예방을 위한 권고(안) [부록3] 개인정보의 기술적 관리적 보호조치 기준(안) [부록4] 웹 보안관련 주요 사이트 리스트 7000 6,478 6000 5000

More information

WAS 의동작과 WEB, Servlet, JSP 엑셈컨설팅본부 /APM 박종현 웹어플리케이션서버란? 웹어플리케이션서버방식은웹서버가직접어플리케이션프로그램을처리하는것이아니라웹어플리케이션서버에게처리를넘겨주고어플리케이션서버가어플리케이션프로그램을처리한다. 여러명의사용자가동일한페

WAS 의동작과 WEB, Servlet, JSP 엑셈컨설팅본부 /APM 박종현 웹어플리케이션서버란? 웹어플리케이션서버방식은웹서버가직접어플리케이션프로그램을처리하는것이아니라웹어플리케이션서버에게처리를넘겨주고어플리케이션서버가어플리케이션프로그램을처리한다. 여러명의사용자가동일한페 WAS 의동작과 WEB, Servlet, JSP 엑셈컨설팅본부 /APM 박종현 웹어플리케이션서버란? 웹어플리케이션서버방식은웹서버가직접어플리케이션프로그램을처리하는것이아니라웹어플리케이션서버에게처리를넘겨주고어플리케이션서버가어플리케이션프로그램을처리한다. 여러명의사용자가동일한페이지를요청하여여러어플리케이션프로그램을처리할때오직한개의프로세스만을할당하고사용자의요청을 thread

More information

untitled

untitled PowerBuilder 連 Microsoft SQL Server database PB10.0 PB9.0 若 Microsoft SQL Server 料 database Profile MSS 料 (Microsoft SQL Server database interface) 行了 PB10.0 了 Sybase 不 Microsoft 料 了 SQL Server 料 PB10.0

More information

게시판 스팸 실시간 차단 시스템

게시판 스팸 실시간 차단 시스템 오픈 API 2014. 11-1 - 목 차 1. 스팸지수측정요청프로토콜 3 1.1 스팸지수측정요청프로토콜개요 3 1.2 스팸지수측정요청방법 3 2. 게시판스팸차단도구오픈 API 활용 5 2.1 PHP 5 2.1.1 차단도구오픈 API 적용방법 5 2.1.2 차단도구오픈 API 스팸지수측정요청 5 2.1.3 차단도구오픈 API 스팸지수측정결과값 5 2.2 JSP

More information

KNOM_Conference_2008_start.ppt

KNOM_Conference_2008_start.ppt 플랫폼소개 목 차 1. enmons란? 2. 개발배경 3. 개발목표 5. 특징 6. 활용방안 7. 주요고객 8. 기대효과 9. 향후과제 10. 결론 2 1. enmons 란? enmons(easy Network Monitoring System) 는 JMX1.2 기반으로구현된망관리소프트웨어개발툴킷이다. enmons 는누구나쉽게네트워크에연결된장치를발견하고모니터링할수있다.

More information

thesis

thesis 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 information

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation 1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation Board(EVB B/D) 들과 TCP/IP Protocol로연결되며, 연결된 TCP/IP

More information

JAVA PROGRAMMING 실습 05. 객체의 활용

JAVA PROGRAMMING 실습 05. 객체의 활용 public class Person{ public String name; public int age; } public Person(){ } public Person(String s, int a){ name = s; age = a; } public String getname(){ return name; } @ 객체의선언 public static void main(string

More information

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

MAX+plus II Getting Started - 무작정따라하기 무작정 따라하기 2001 10 4 / Version 20-2 0 MAX+plus II Digital, Schematic Capture MAX+plus II, IC, CPLD FPGA (Logic) ALTERA PLD FLEX10K Series EPF10K10QC208-4 MAX+plus II Project, Schematic, Design Compilation,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 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 information

Microsoft Word - src.doc

Microsoft 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 information

CONTENTS C U B A I C U B A 8 Part I Part II Part III Part IV Part V Part VI Part VII Part VIII Part IX 9 C U B A 10 Part I Part II Part III Part IV Part V Part VI Part VII Part VIII Part IX 11 C U B

More information

Backup Exec

Backup Exec (sjin.kim@veritas.com) www.veritas veritas.co..co.kr ? 24 X 7 X 365 Global Data Access.. 100% Storage Used Terabytes 9 8 7 6 5 4 3 2 1 0 2000 2001 2002 2003 IDC (TB) 93%. 199693,000 TB 2000831,000 TB.

More information

SMB_ICMP_UDP(huichang).PDF

SMB_ICMP_UDP(huichang).PDF SMB(Server Message Block) UDP(User Datagram Protocol) ICMP(Internet Control Message Protocol) SMB (Server Message Block) SMB? : Microsoft IBM, Intel,. Unix NFS. SMB client/server. Client server request

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP 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 information

슬라이드 1

슬라이드 1 2015( 제 8 회 ) 한국소프트웨어아키텍트대회 OSS 성능모니터링을위한 Open Source SW 2015. 07. 16 LG CNS 김성조 Tomcat & MariaDB 성능모니터링 Passion Open Source Software Open Hadoop IT Service Share Communication Enterprise Source Access

More information

00-1표지

00-1표지 summary _I II_ summary _III 1 1 2 2 5 5 5 8 10 12 13 14 18 24 28 29 29 33 41 45 45 45 45 47 IV_ contents 48 48 48 49 50 51 52 55 60 60 61 62 63 63 64 64 65 65 65 69 69 69 74 76 76 77 78 _V 78 79 79 81

More information

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E > 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 소켓 (Socket) (1/2) Socket 이란? 서버와클라이언트가서로특정한규약을사용하여데이터를전송하기위한방식 서버와클라이언트는소켓연결을기다렸다가소켓이연결되면서로데이터를전송 현재네트워크상에서의모든통신의근간은 Socket 이라할수있음 Page 2 1 소켓 (Socket) (2/2)

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud

Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud 오픈소스 기반 레드햇 클라우드 기술 Red Hat, Inc. Senior Solution Architect 최원영 부장 wchoi@redhat.com Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud Red

More information

PRO1_04E [읽기 전용]

PRO1_04E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_04E1 Information and S7-300 2 S7-400 3 EPROM / 4 5 6 HW Config 7 8 9 CPU 10 CPU : 11 CPU : 12 CPU : 13 CPU : / 14 CPU : 15 CPU : / 16 HW 17 HW PG 18 SIMATIC

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

<목 차 > 제 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 information

Oracle9i Real Application Clusters

Oracle9i 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

로거 자료실

로거 자료실 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 information

Java Enterprise User Solution JEUS 는웹환경에서애플리케이션을개발, 운용, 실행할수있는플랫폼역할을하면서, 필요한각종서비스들을제공해주는웹어플리케이션서버 (Web Application Server) 입니다. 세계 상용최초로국제표준인 J2EE 1.4

Java Enterprise User Solution JEUS 는웹환경에서애플리케이션을개발, 운용, 실행할수있는플랫폼역할을하면서, 필요한각종서비스들을제공해주는웹어플리케이션서버 (Web Application Server) 입니다. 세계 상용최초로국제표준인 J2EE 1.4 시장점유율 1 위 WAS 클라우드환경과대용량트랜잭션을쉽고빠르게구현하는세계최초 Java EE 6,7 국제표준인증을획득한웹어플리케이션서버 MIDDLEWARE JEUS WebtoB Tmax InfiniCache Java Enterprise User Solution JEUS 는웹환경에서애플리케이션을개발, 운용, 실행할수있는플랫폼역할을하면서, 필요한각종서비스들을제공해주는웹어플리케이션서버

More information

우루과이 내지-1

우루과이 내지-1 U R U G U A Y U r u g u a y 1. 2 Part I Part II Part III Part IV Part V Part VI Part VII Part VIII 3 U r u g u a y 2. 4 Part I Part II Part III Part IV Part V Part VI Part VII Part VIII 5 U r u g u a

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Network Programming Jo, Heeseung Network 실습 네트워크프로그래밍 멀리떨어져있는호스트들이서로데이터를주고받을수있도록프로그램을구현하는것 파일과는달리데이터를주고받을대상이멀리떨어져있기때문에소프트웨어차원에서호스트들간에연결을해주는장치가필요 이러한기능을해주는장치로소켓이라는인터페이스를많이사용 소켓프로그래밍이란용어와네트워크프로그래밍이랑용어가같은의미로사용

More information

개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다.

개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다. 설치및환경설정 JDBC 접속세션구분 / 확인 2013. 11. 01 개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다. 사용하기 JEUS 에서설정방법

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 객체지향프로그래밍 IT CookBook, 자바로배우는쉬운자료구조 q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 q 객체지향프로그래밍의이해 v 프로그래밍기법의발달 A 군의사업발전 1 단계 구조적프로그래밍방식 3 q 객체지향프로그래밍의이해 A 군의사업발전 2 단계 객체지향프로그래밍방식 4 q 객체지향프로그래밍의이해 v 객체란무엇인가

More information

세계 비지니스 정보

세계 비지니스 정보 - i - ii - iii - iv - v - vi - vii - viii - ix - 1 - 2 - 3 - - - - - - - - - - 4 - - - - - - 5 - - - - - - - - - - - 6 - - - - - - - - - 7 - - - - 8 - 9 - 10 - - - - - - - - - - - - 11 - - - 12 - 13 -

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 20 장패키지 이번장에서학습할내용 패키지의개념 패키지로묶는방법 패키지사용 기본패키지 유틸리티패키지 패키지는연관된클래스들을묶는기법입니다. 패키지란? 패키지 (package) : 클래스들을묶은것 자바라이브러리도패키지로구성 ( 예 ) java.net 패키지 네트워크관련라이브러리 그림 20-1. 패키지의개념 예제 패키지생성하기 Q: 만약패키지문을사용하지않은경우에는어떻게되는가?

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

초보자를 위한 분산 캐시 활용 전략

초보자를 위한 분산 캐시 활용 전략 초보자를위한분산캐시활용전략 강대명 charsyam@naver.com 우리가꿈꾸는서비스 우리가꿈꾸는서비스 우리가꿈꾸는서비스 우리가꿈꾸는서비스 그러나현실은? 서비스에필요한것은? 서비스에필요한것은? 핵심적인기능 서비스에필요한것은? 핵심적인기능 서비스에필요한것은? 핵심적인기능 서비스에필요한것은? 적절한기능 서비스안정성 트위터에매일고래만보이면? 트위터에매일고래만보이면?

More information

리뉴얼 xtremI 최종 softcopy

리뉴얼 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 information

서현수

서현수 Introduction to TIZEN SDK UI Builder S-Core 서현수 2015.10.28 CONTENTS TIZEN APP 이란? TIZEN SDK UI Builder 소개 TIZEN APP 개발방법 UI Builder 기능 UI Builder 사용방법 실전, TIZEN APP 개발시작하기 마침 TIZEN APP? TIZEN APP 이란? Mobile,

More information

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기 Mango-IMX6Q mfgtool 을 이용한이미지 Write 하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document

More information

untitled

untitled 3 IBM WebSphere User Conference ESB (e-mail : ljm@kr.ibm.com) Infrastructure Solution, IGS 2005. 9.13 ESB 를통한어플리케이션통합구축 2 IT 40%. IT,,.,, (Real Time Enterprise), End to End Access Processes bounded by

More information

Data Guard 기본개념.doc

Data Guard 기본개념.doc Data Guard 개념 (9i R2 9.2.0.1) 김형일 HIKIM000@EMPAL.COM 1 목차 1. DataGuard 개념 3 1.1 Data Guard Architecture 3 1.2 DataGuard 장점 4 1.3 Switch over and Failover 5 1.4 Physical Standby 와 Logical Standby 5 2. Data

More information

Interstage

Interstage Interstage Basic Web Application Development Servlet/JSP Interstage Web -Servlet/JSP >> 1)Servlet EJB (Web-Application) 2) Interstage Apworks 3), 4) >> 1) / Web /PM >> 1) Web Application 2)Interstage >>

More information

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드] - Socket Programming in Java - 목차 소켓소개 자바에서의 TCP 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 Q/A 에코프로그램 - EchoServer 에코프로그램 - EchoClient TCP Programming 1 소켓소개 IP, Port, and Socket 포트 (Port): 전송계층에서통신을수행하는응용프로그램을찾기위한주소

More information