Java 소켓 프로그래밍에서 NIO에 selector의 최대 개수는 ?
글쓴이: ljh0431 / 작성시간: 일, 2013/01/27 - 10:36오전
JAVA언어로 소켓 프로그래밍을 할 경우 NIO로 서버를 개발하는 경우의 소스를 보니
이벤트 리스너로 selector를 사용하던데 windows x64환경에서는 최대 64개까지만 등록할 수 있고
리눅스에서는 무제한이라고 하는데 이 말이 맞나요 ?
Selector selecotr의 경우
Selector가 감시할 수 있는 이벤트 개수는 최대 몇개나 되나요 ?
운영체제에 따라 다르나요 ?
윈도우는 특성상 64개라고 나오는데 이 말이 맞는지 모르겠습니다.
그렇다면 윈도우에서 Java 서버는 그다지 의미가 없지 않을까요 ?
궁금합니다.
수고하세요.
Forums:
해본 적은 없지만...
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4503092
해결되었다고 하네요.
Java 7 에 Windows 를 쓰신다면 AsynchronousSocketChannel 이 추천되는 모양이던데요.
Java 6 에서 Linux 에서의 Selector 구현이 epoll 기반이 되었기 때문에 Linux 에서는 Selector 가 추천되기도 하는 모양이지만...
자세한 비교를 해놓은 사람은 없는 듯...
다만 AsychronousSocketChannel 은 어디든 충분한 성능이 나오는 모양이예요.
댓글 달기