Program Club

select vs poll vs epoll

proclub 2020. 11. 24. 20:26
반응형

select vs poll vs epoll


수천 개의 UDP 연결 (약 100,000 개의 세션)을 지원해야하는 새 서버를 설계하고 있습니다. 사용할 입력이나 제안은 무엇입니까?


대답은 Linux를 사용하는 경우 epoll, FreeBSD 또는 Mac OS X를 사용하는 경우 kqueue, Windows를 사용하는 경우 i / o 완료 포트입니다.

(거의 확실하게) 조사하고 싶은 몇 가지 추가 사항은 다음과 같습니다.

  • 부하 분산 기술
  • 다중 스레드 네트워킹
  • 데이터베이스 아키텍처
  • 완벽한 해시 테이블

또한,는 중요한 TCP와 달리 UDP는 "연결"되어 있지 않습니다합니다. 네트워크 기반 솔루션을 디버깅하는 것이 어려울 수 있으므로 작게 시작하고 더 크게 확장하는 것이 가장 좋습니다.


CURL의 저자는 poll vs select vs event 라이브러리 에 대한 놀라운 기사를 썼습니다 .


Linux : epollFreeBSD : kqueueWindows : ??

이를 추상화 할 수있는 libevent 및 libev와 같은 래퍼 라이브러리가 있습니다.

참고 URL : https://stackoverflow.com/questions/4039832/select-vs-poll-vs-epoll

반응형