Linux Kernel 3.9 에서의 SO_REUSEPORT

Tags:

http://freeprogrammersblog.vhex.net/post/linux-39-introdued-new-way-of-writing-socket-servers/2
https://lwn.net/Articles/542629/

SO_REUSE_PORT를 사용해서 소켓을 만드는 프로세스를 여러개 띄우면 부모 process 역할은 커널이 알아서 한다. 이 때 어떤 child process가 요청을 처리할지도 공평하게 분배해서 workload의 분산이 잘 이루어짐.

이 방식이 정말 사용하기 쉬운게, 자식 프로세스는 필요하면 그냥 더 띄우기만 하면 되기 때문. 더구나 이건 pre-fork model이므로 접속이 있을때마다 자식 process를 띄우는 것에 비해 프로세스의 수나 서버에 걸리는 로드를 조정하기에 편리. 시간이 좀 지나면 이렇게 코딩하는게 기본 방식이 될지도.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *