> 백엔드 개발 > PHP 튜토리얼 > 선택하고 epoll

선택하고 epoll

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-07-29 08:55:32
원래의
3818명이 탐색했습니다.

Select와 epoll은 모두 다중 채널 I/O 메커니즘에 대한 솔루션이지만 Select는 POSIX 표준에 있는 반면 epoll은 Linux에 고유합니다.
epoll의 가장 큰 장점은 FD 개수가 늘어나도 효율성이 떨어지지 않는다는 점입니다. select에서는 데이터 구조가 배열 데이터 구조와 비슷하지만 큐가 있는지 직접 확인할 수 있습니다. 비어 있습니다.
nginx는 epoll을 사용하여 I/O 다중화를 달성하고 높은 동시성을 지원합니다. 현재 nginx는 높은 동시성 시나리오에서 점점 더 널리 사용되고 있습니다.
select의 한 가지 단점은 단일 프로세스가 모니터링할 수 있는 파일 설명자 수에 최대 제한이 있다는 것입니다.
에폴:
(1) 모니터링되는 fd 수가 증가하더라도 IO의 효율성은 감소하지 않습니다. Epoll은 select, poll의 폴링 방식과 다르지만 각 fd에서 정의한 콜백 함수를 통해 구현된다. 준비된 fd만이 콜백 함수를 실행합니다.
(2) 레벨 트리거링 및 에지 트리거링 지원(어떤 파일 설명자가 방금 준비되었는지 프로세스에 알리고 한 번만 알리고, 조치를 취하지 않으면 다시 알리지 않습니다. 이 방법을 에지 트리거링이라고 합니다) 두 가지 방법을 사용하면 이론적으로 에지 트리거링의 성능이 더 높지만 코드 구현이 상당히 복잡합니다.
(3) 좋은 준비 이벤트 알림 메커니즘이 있습니다
선택:
(1) 단일 프로세스가 모니터링할 수 있는 fd 수는 제한되어 있습니다. 32비트 시스템에서 관리할 수 있는 최대 fd 수는 1024개입니다. (2) 소켓을 선형적으로 스캔하므로 소켓 파일 디스크립터 수가 늘어나면 많은 시간이 낭비됩니다.

').addClass('사전 번호 매기기').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 위 내용은 관련 내용을 포함하여 select와 epoll을 소개하고 있으니 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.

관련 라벨:
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
linux - epoll + 비차단 IO 수신 데이터 문제
에서 1970-01-01 08:00:00
0
0
0
CPU 급증 이유
에서 1970-01-01 08:00:00
0
0
0
nginx 높은 동시성 문제
에서 1970-01-01 08:00:00
0
0
0
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿