목록Computer Science (21)
ultra_dev
트랜젝션이란 데이터 베이스의 상태를 변경시키기 위하여 수행되는 작업의 단위 삽입, 삭제, 수정 등의 처리작업을 하나의 단위로 묶어서 실행하며, 작업 실행 도중 실패 시 해당 작업 전체를 롤백할 수 있다. 이 트랜잭션에는 ACID라는 특징이 있다. 바로 원자성, 일관성, 고립성, 지속성이다. 원자성은 한 트랜잭션 내 실행한 작업들은 하나로 간주해서 모두 성공하거나 실패하는 것으로 처리 일관성은 데이터베이스는 항상 일관성 있는 상태를 유지해야한다는 것을 의미 트랜잭션 이전과 이후, 데이터베이스의 상태는 이전과 같이 유효해야 한다. 즉, 트랜잭션이 커밋되면 데이터 베이스에 적용한 제약조건(PRIMARY KEY, UNIQUE, NOT NULL 등)을 위반하지 않는다는 보장이 있어야 함 고립성은 둘 이상의 트랜잭..
Web Server란? 클라이언트의 request(요청)를 받아 정적인 컨텐츠(html, css, js)를 response(응답)하는 서버 WAS 란? Web Application Server 클라이언트의 request(요청)를 받아 DB 조회나, 어떤 로직을 처리해야하는 동적인 컨텐츠를 response(응답)하는 서버 웹서버는 정적, WAS는 동적 결론적으로 어떤 타입의 컨텐츠(동적, 정적)를 제공하냐는 것 웹 서버와 WAS는 각각 독립적으로 존재 가능 대부분의 WAS는 정적인 컨텐츠를 제공해주고 있기 때문에, 웹 서버 없이 WAS 만 존재할 수 있음 즉, WAS는 웹 서버를 포함하는 개념이라고 할 수 있음 그렇다면 WAS 외에 굳이 웹서버를 사용하는 이유는? WAS가 해야할 일의 부담을 줄이기 위해서..
TCP와 UDP는 OSI 7 계층들 중 4계층에서 사용되는 프로토콜이다. (Transport 4계층) TCP(Transmission Control Protocol) TCP는 연결 지향적 프로토콜이다. ※ 연결 지향적 프로토콜은 클라이언트와 서버가 연결된 상태에서 데이터를 주고받는 프로토콜을 의미한다. 장치들 사이에 신뢰성을 보장하는 연결형 서비스 TCP는 패킷을 안정적으로, 순서대로, 에러 없이 교환할 수 있게 한다. TCP의 특징 1. 연결형 서비스로 가상 회선 방식을 제공 3-way handshaking 과정을 통해 연결을 설정하고, 4-way handshaking 과정을 통해 연결을 해제한다. 2. 흐름 제어(Flow control) 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우(송신이 너무..
프로세스(process)란 간단히 말해 '실행 중인 프로그램'이다.프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)를 할당받아 프로세스가 된다 프로세스는 프로그램을 수행하는 데 필요한 데이터와 메모리 등의 자원 그리고 쓰레드로 구성되어 있으며프로세스의 자원을 이용해서 실제로 작업을 수행하는 것이 바로 쓰레드이다. 스레드는 Code,Data 영역과 Heap 영역을 공유하고, Stack 영역은 각자 독립적으로 가지고 있다. 모든 프로세스에는 최소 하나 이상의 쓰레드가 존재하며,둘 이상의 쓰레드를 가진 프로세스를 멀티쓰레드 프로세스라고 한다. 멀티쓰레딩은 하나의 프로세스 내에서 여러 쓰레드가 동시에 작업을 수행하는 것이 가능하다. 실제로 한 개의 CPU가 한 번에 단 한가지 작업만 수행할 수 있기 때..