본문 바로가기
휴지통/CS

병목현상

by 신재권 2023. 8. 13.

병목현상이란?

병목현상(Bottleneck)은 전체 시스템 또는 프로세스의 성능을 제한하는 한계적인 요소 또는 지점을 가리키는 용어 입니다.

어떤 부분이나 요소가 성능을 더 빠르게 진행시킬 수 있는 것들의 속도를 늦추거나 제한하는 것을 의미합니다.

이로 인해 시스템의 전체적인 성능이 저하될 수 있습니다.

병목현상이 발생하는 이유

주로 시스템 내에서 자원의 한계 또는 제한된 처리량 때문에 발생합니다.

  1. 자원 제한 : 하나의 컴포넌트가 자원이 다른 컴포넌트보다 더 느리게 동작하거나 처리량이 한정되어 있을 때 병목현상이 발생할 수 있습니다.
  2. 선형 처리 : 여러 구성 요소가 동시에 작업을 수행하더라도 최종 결과를 만들기 위해 순차적으로 처리되어야 하는 경우 발생할 수 있습니다.
  3. 프로세스 의존성 : 여러 프로세스 또는 스레드가 서로 의존적인 경우, 완료될때까지 대기해야 할 때 발생할 수 있습니다.

병목현상의 해결법

  1. 자원 확장 : 병목현상을 유발하는 자원을 확장하거나 업그레이드 하여, 더 많은 처리량을 확보합니다.
  2. 병렬 처리 : 작업을 여러 개의 스레드나 프로세스로 분할하여 병렬 처리를 적용합니다.
  3. 최적화 : 자원 사용을 효율적으로 개선합니다.
  4. 로드 밸런싱 : 작업을 여러 서버 또는 노드에 분사하여 처리하도록 하여 부하를 분산시킵니다.
  5. 캐싱 : 자주 사용되는 데이터나 계산 결과를 캐시에 저장해 반복적인 연산을 피하고 처리 속도를 향상시킵니다.
  6. 비동기 처리 : 이벤트 기반 또는 비동기 처리를 통해 작업을 효율적으로 처리하고 대기 시간을 최소화 합니다.

'휴지통 > CS' 카테고리의 다른 글

[OS] Introduction to Operating Systems  (0) 2023.08.30
TCP/IP  (0) 2023.08.23
스레드의 종류  (0) 2023.08.15
OS 스케줄러  (0) 2023.08.09
CPU  (0) 2023.08.09