본문 바로가기

CS2

트랜잭션이란? 트랜잭션(Transaction)이란? 트랜잭션이란, 데이터베이스의 상태를 변화시키기 위해 수행하는 논리적인 작업의 단위를 뜻합니다. 데이터베이스의 상태를 변화시킨다는 것은 DDL, DML을 통해 작업을 수행하는 것을 의미 합니다. 이러한 작업의 단위는 SQL한 문장이 아닌 여러 문장이 될 수 있습니다. 예를들어, 게시판에서 내가 글을 작성하고 다시 게시판으로 돌아오면 내가 작성한 글이 업데이트된 게시판을 보게 됩니다. 여기서 INSERT와 SELECT 둘 다 합친것이 작업 단위 입니다. 트랜잭션의 특징(ACID) 원자성(Atomicity) : 트랜잭션의 연산은 모든 연산이 완벽히 수행되어야 하며, 한 연산이라도 실패하면 트랜잭션은 실패합니다. 일관성(Consistency) : 트랜잭션은 유효한 상태로만 .. 2021. 10. 23.
Process와 Thread Process란? 프로세스는 OS가 메모리 등의 자원을 할당해준 실행중인 프로그램을 말합니다. CPU에 할당되어 순차적으로 수행될 수 있는 능동적 개체 각각의 프로세스는 서로 메모리 공간을 독자적으로 갖기 때문에 서로 메모리 공간을 공유하지 못합니다. 각각 독립된 메모리 영역(Code, Stack, Heap, Data)을 할당 받습니다. Thread란? 프로세스 내에서 실행되는 여러 흐름의 단위 프로세스의 특정한 수행 경로 프로세스가 할당 받은 자원을 이용하는 실행의 단위 스레드는 프로세스 내에서 Stack만 따로 할당받고 나머지 영역은 공유한다. 스레드는 한 프로세스 내에서 동작되는 여러 실행의 흐름으로, 프로세스 내의 주소 공간이나 자원들을 같은 프로세스 내에 스레드끼리 공유하면서 실행된다. 멀티 프.. 2021. 9. 22.