
I/O 병목 어떻게 해결할까?
·
CS
많은 서버는 HTTP 프로토콜을 이용해 클라이언트와 통신합니다. 이외에도 DB와 TCP 기반의 프로토콜을 사용하여 데이터 송수신을하게 됩니다. 서버의 API 에서도 네트워크 통신을 기반으로 동작합니다.이처럼 서버는 다양하고 많은 네트워크 통신 및 IO 처리를 하게 됩니다. 하지만 이러한 통신이 많아 지게되면, 이전의 처리되고 있는 I/O 요청을 기다리게되는 병목 현상이 생기게됩니다. 이러한 I/O 병목 해결문제를 "주니어 개발자가 반드시 알아야할 실무지식" 해당 책을 토대로 정리 해보았습니다. I/O의 병목은 왜 생길까?I/O 처리는 대체로 다음과 같은 특성을 갖습니다:블로킹(Blocking) 동작: 데이터 입출력이 완료될 때까지 스레드가 멈춰서 기다립니다.실행 시간의 대부분을 IO 대기에 소모합니..