Proxy'대리', '대신' 이라는 뜻을 가지며, 프로토콜에 있어서는 대리 응답에서 사용하는 개념을 의미합니다.Server와 Client 사이에 존재하며, 두 사이간의 중계기로써 통신을 수행하는 것을 Proxy라고 합니다. 이 중계 기능의 주체가 바로 Proxy Server인 것이죠.Proxy Server의 종류포워드 프록시소위 말하는 프록시가 이 포워드 프록시 입니다. 클라이언트와 서버 사이에서 중계를 하며, 요청과 응답은 항상 Proxy Server를 거칩니다. 또한, 클라이언트를 감추는 효과가 있습니다.리버스 프록시포워드 프록시와 달리 서버들이 주로 내부망으로 구성되어 있으며 리버스 프록시(Reverse Proxy)에게만 연결을 허용합니다. 즉, 서비스를 위한 보안 채널을 구축합니다.클라이언트가 서..
Undo와 Redo Undo란 DML 트랜잭션을 취소하여 데이터베이스를 트랜잭션 이전의 상태로 되돌리는 것으로 작업 롤백과, 읽기 일관성, 복구를 합니다. DML 트랜잭션(update, insert, delete)이 발생하게 되면, 변경 이전의 데이터(원본 데이터)인 Undo Data는 전부 Undo Segment에 저장됩니다. 이때 Undo Segment를 저장하고 있는 Tablespace가 바로 Undo Tablespace입니다. Redo란 단어 그대로 "다시 하다"라는 뜻을 가지고 있습니다. 즉, DML 트랜잭션을 다시 수행한다는 의미겟죠?Redo는 기본적으로 복구의 역할을 합니다. DML 트랜잭션을 수행하던 도중 서버에 장애가 발생하여 데이터베이스가 shutdown 되었을 때 데이터베이스를 재기..
SCN(System Change Number)DB의 변경이 발생한 시점. 즉 COMMIT이 발생하면 트랜잭션은 고유한 번호를 받게 됩니다. 이 때 발생하는 번호가 SCN(System Change Number)입니다. 이 SCN을 통해 트랜잭션을 관리할 수 있고 장애 발생 시 복구할 때 사용되는 키가 됩니다.또한, SCN(System Change Number)을 통해서 Data files, Control File, Redo Log File의 동기화 정보를 맞춥니다. SCN에 기록된 파일을 통해 복구 위치 파악하기Data Fiiles: 실제 데이터 저장되는 디스크 상의 물리적 파일이 파일을 OS 상에서 삭제 및 이동하면 안되고 DB에서 삭제해야 합니다. Control File: DB의 제어 정보를 가지고 있..
OSI 7 계층OSI 모델은 1984년 ISO가 만들었으며, 컴퓨터 간에 데이터를 주고 받는 과정을 7개의 계층으로 비유하여 설명합니다.계층이 상세하게 나누어져 있어, 네트워크 통신이 일어나는 과정을 상세히 이해할 수 있는 기반을 제공합니다.OSI 모델의 7 계층은 현실에서 일어나는 네트워킹과 완전히 대응되진 않지만, 특정 프로토콜(Protocol)이나 기술들이 OSI 모델에 기반하여 디자인되기도 합니다.응용 계층(Application Layer) - 7 계층사용자와 가장 밀접한 계층으로 사용자와 직접적으로 상호 작용하며 인터페이스의 역할을 합니다.응용 프로세스 간 정보 교환을 담당합니다.웹 브라우저와 MS Ofiice 같은 응용 프로그램이 해당 계층에 속합니다.관련 프로토콜: HTTP, FTP, DNS..
병렬 처리(Parallel Processing)오라클에서 병렬 처리(Parallel Processing)란 하나의 SQL를 처리하기 위해 여러 개의 프로세스를 띄워 작업 속도를 보다 빠르게 하는 것을 목표로 하는 기능입니다. 기본적으로 사용자 세션(User Session)이 붙게 되면(=SQL Plus 혹은 DBeaver, Toad 등과 같은 툴로 접근하는 경우) 서버 메모리에 Dedicate Server를 띄우게 됩니다. 그리고 하나의 Dedicate Server가 한 세션에 대한 SQL를 처리하게 됩니다. 하지만, 병렬 처리(Parallel Processing)는 여러 개의 Dedicate Server를 통해 SQL를 분할하여 처리합니다. 병렬 처리(Parallel Processing)는 성능 향상에..
파싱(Parsing) SQL은 SGA(System Global Area) 내부 Shared Pool의 라이브러리 캐시(Library Cache)에는 SQL 실행 정보(실행 계획 등...)가 들어있는데, 이러한 실행 정보를 만드는 과정을 파싱(Parsing)이라고 합니다. 파싱(Parsing)은 SQL이 들어오면 이를 분석하여 어떻게 실행할지 계획을 세우고 실행하여 결과를 만들어 냅니다. 이러한 파싱은 소프트 파싱(Soft Parsing)과 하드 파싱(Hard Parsing)으로 나뉘어집니다. 소프트 파싱(Soft Parsing)파싱(Parsing)을 할 때 SQL 자체가 잘못된 SQL. 즉, 문법이 맞지 않거나, 존재하지 않는 테이블에 CRUD 작업을 하는 SQL이 들어올 수 있는데, 이 때 잘못된 SQ..
클래스 로더(Class Loader)자바는 컴파일 타임이 아닌 런타임(Byte Code를 실행하는 시점)에 클래스를 로드하고 링크하는 특징을 가지고 있습니다. 이를 동적 로드라 합니다. 이러한 동적 로드를 담당하는 것이 JVM의 구성 요소 중 하나인 클래스 로더(Class Loader) 입니다. 클래스 로더(Class Loader)는 JVM의 Runtime Data Area의 메소드 영역(=Method Area, Static Area, Class Area)에 동적으로 클래스를 로드하는 역할을 합니다. 이러한 클래스 로더는 로딩, 링크, 초기화 단계로 나뉘어져 있습니다. 클래스 로더의 3단계로딩(Loading)자바 바이트 코드(.class)를 메소드 영역에 저장합니다.각 자바 바이트 코드(.class)는 ..
Legacy의 본 뜻은 "유산"이라는 의미를 가지고 있습니다. IT 업계에서는 이 레거시(Legacy)를 어떤 의미로 해석하고 있을까요?레거시(Legacy)Legacy 혹은 Legacy System이란, 낡은 기술이나 방법론, 컴퓨터 시스템, 소프트웨어 들을 이야기합니다. 이는 현대까지도 남아 쓰이는 기술을 부르는 말일 수도 있지만 더이상 쓰지 않더라도 현대의 기술에 영향을 주는 경우도 포함합니다. 따라서, 공생해야 하거나 기반이 되는 오래된 시스템을 주로 레거시 시스템(Legacy System)이라고 합니다.레거시 시스템으로 인한 문제점하지만, 레거시 시스템은 여러가지 이유로 문제를 일으킬 수 있습니다.예로, 적용되는 보안 패치의 부족으로 이전 운영체제 또는 응용 프로그램 내에 취약성을 일으킬 수 있고..
여러 JDK가 존재하는 이유여러 JDK가 존재하는 가장 큰 이유는 라이센스 때문입니다.최신 버전의 Oracle JDK 17, 18의 경우 "Oracle No-Free Terms and Conditions(NFTC)" 라이센스가 적용됩니다. 사용 가능한 목적과 대상은 다음과 같으며 회사에서 상용 목적으로는 사용이 불가합니다."internally use the unmodified Programs for the purposes of developing, testing, prototyping and demonstrating your applications, and running the Program for Your own personal use or internal business operations” JAVA..
세그먼트(Segment)와 오브젝트(Object)데이터베이스에서 공간은 테이블스페이스(Tablespace)를 의미합니다. 테이블스페이스에 저장되는 요소에는 테이블(Table), 인덱스(Index), 파티션(Partition) 등이 있습니다. 이렇게 데이터를 가지고 있는 요소들을 세그먼트(Segment)라고 합니다. 반면, 트리거(Trigger), 프로시저(Procedure), 함수(function)과 같이 데이터를 가지고 있지 않고 어떠한 코드만 가지고 있는 것을 오브젝트(Object)라 합니다. 오브젝트(Object)는 세그먼트(Segment) 보다 조금 더 큰 개념으로 오브젝트(Object)는 세그먼트(Segment)를 포함하고 있습니다. 또한, 오브젝트(Object)는 저장 공간을 할당하지 않은 객..
- Total
- Today
- Yesterday