선배님들, 조언좀 얻고자 해요.
좀 큰 프로젝트를 기획하고 있어요. 클라우드 비슷한 거에요.
여기 사용되는 서버는 모바일(안드로이드), 자바 위젯(swing), 웹페이지(웹소켓) 등등의 클라이언트를 수용합니다. 모두 동일한 프로토콜을 사용하구요.
어떤 한 클라이언트가 변경사항을 만들면 접속된 다른 클라이언트한테 push 해서 업데이트 되게 하려구요.
구현은 리눅스에서 C++11로 하려고 합니다. 여기서 제가 묻고 싶은거는요
httpd나 sshd 같은 서버들은 매 커넥션마다 프로세스를 fork 해서 프로세스당 거의 한 커넥션을 수용하잖습니까?
리눅스에서 이렇게하면 무슨 이점이 있나요? 아니면 프로그래밍이 쉬워서 그런가... 아님 소켓이나 fd 제한 때문에 그런가?
뭔가 장점이 있어서 이렇게 구현을 해놓은 거고 이렇게 하면 좋겠죠?
어떻게 구현하는 것이 좋을까요. fork - 프로세스 단위인지 아니면 스레드 단위로 관리할지?
프로세스 단위로 관리하면 DB 연결이 문제일텐데... 도와줘요!
x