1. 미들웨어이야기 139

Oracle oci 와 thin 간단 비교

SUN 에서는 각 DB Vender사에 4가지 종류의 JDBC JDBC Driver가 있음을 공표 하였습니다. 그 중에서도 Type2와 Type4 형태의 Driver를 많이 제공하는데 Type2 JDBC Driver 란, Oracle로 얘기하면 Sql*Net을 필요로 하며, .dll 혹은 .so 형태의 H/W 종속적인 형태의 Native Module을 통해 DB연결 됩니다. Oracle의 경우 JDBC Type2 형태를 통산 OCI(Oracle Call Interface) Driver 라 부릅니다. Type 4 형태의 JDBC Driver는 순수하게 Java package만으로 바로 DB 연결이 가능합니다. Oracle에서는 통산 Thin Driver라 부릅니다. Oracle의 데이터를 보면 성능 면에서..

JEUS가 사용하는 JDBC Driver Type

DataSource는 하나의 javax.sql.DataSource는 어플리케이션과 connection pool 사이의 인터페이스입니다. Javax.sql.DataSource 객체(Object)는 DB Connection들의 Factory로서 고려 되어질 수 있으며 이것은 java.sql.DriverManager이상의 많은 이점을 제공합니다. 우선은 javax.sql.DataSource를 가졌다면 어플리케이션에서 driver 정보의 하드코딩이 필요가 없이 JEUSMain.xml에 들어가 있습니다. 또한 Connection Pool은 성능과 관리 면에서 많은 이점을 가져다 주고 있습니다. 현재는 WAS의 표준으로 쓰이고 있으며 JEUS에서도 5점대 버전에 올라가면서 javax.sql.DataSource 방식..

JDBC Driver Type

JDBC Driver Type에는 4가지가 있으며 아래와 같습니다. Type1:JDBC-ODBC Bridge JDBC 함수호출을 ODBC 함수호출로 전환하기 때문에 만약 예전에 사용하던 환경이 ODBC 를 이용해 구축되어 있다면 굳이 다른 드라이버를 사용하지 않고서도 시스템을 확장해 나갈 수가 있습니다. ODBC 와 DB 간에 소켓을 사용하기 때문에 방화벽을 통과하지 못하기 때문에 익스트라넷 환경에서 사용할 수가 없습니다. 또한 ODBC 접속부분에서 100% 자바코드를 사용하지 않기 때문에 애플릿으로도 연결할 수가 없습니다. (주로 *.mdb, SQL Server등을 Access시 사용) Type2:Native-API partly-Java Driver 네이티브-API란 벤더에서 제공하는 라이브러리를 이용..

JVM GC(Garbage Collection) 이란?

GC란 무엇인가? GC는 Garbage Collection의 약자로 Java 언어의 중요한 특징중의 하나입니다. GC는 Java Application에서 사용하지 않는 메모리를 자동으로 수거하는 기능을 말합니다. 예전의 전통적인 언어 C등의 경우 malloc, free등을 이용해서 메모리를 할당하고, 일일이 그 메모리를 수거해 줘야 했습니다. 그러나 Java 언어에서는 GC 기술을 사용함에 따라서 개발자로 하여금 메모리 관리에서 부터 좀더 자유롭게 해주었습니다. GC의 동작 방법은 어떻게 되는가? 1. JVM 메모리 영역 GC의 동작 방법을 이해하기 위해서는 Java의 메모리 구조를 먼저 이해할 필요가 있습니다. 일반적으로 Application에서 사용되는 객체는 오래 유지 되는 객체보다, 생성되고 얼마..

WAS Hang-up 장애

통상적으로 시스템이 느려지거나 멈추는 현상을 Hang up이라고 한다. -. Hang up : Server Instance는 실행되고 있으나, 아무런 응답이 없는 상황 -. Slowdown : Server Instance의 response time이 아주 급격히 떨어지는 상태 Hang up이나 slowdown 현상은 대부분이 Network, User Application, WAS(Servlet Engine), JVM, RDBMS 다섯가지 요소 중 하나이상의 병목으로 인해서 발생을 합니다. 이 장에서는 WAS의 Hang up이나 slowdown에 대해서만 설명을 하겠습니다. 1) dead lock Java는 Multi Threading을 지원합니다. 이 경우 공유 영역을 보호하기 위해서 Synchroniz..