의견 모와봅니다.ㅎㅎㅎ
채팅 모듈에서 채널별 방 개설시
채팅 모듈 프로그램을(.exe) 방 개설에 따라 각각의 포트를 지정한 채팅 모듈 프로그램을 실행시켜서 독립적 개별 공간을
할당하는게 낳을까요?
아니면 모듈 프로그램은 한번만 실행이되고 그 프로그램안에서 채널별 방을 구분해주는게 더 낳을까요?
여러 측면에서 본다면 과연 어느 방법이 더 효율적일까요??
마지막으로 즐거운 하루 보내세요^^
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 23개
기본적으론 한 서버 프로그램에서 채널별 방을 구분해주는 방식입니다^^;
그렇군요.
문챗 사이트 접속해봤었거든요
기반이 뭘로 만드신건가요??
자원관리 측면을 고려해보시면 답이 나오지 않을까 싶습니다.
혹시 이유는 알 수 있을까요?
감사합니다.
가베지을 알아서 처리한다고 하지만, 한계가 생겨서 서버 증설해야 되는게, 리눅스 서버에 C 로 개설하는것보다
더 크다라는 사견이라 ( 아니다...괞찮다라는 분도 계시겠지만 )
서버는 원도우가 아닌 다른것으로 얘기 드리고 싶습니다.
어쩌실수 없이 exe 로 하셔야 한다면,
후자의 방식에 각 방을 개설하고 Thread 로 운영...
아시겠지만, 큐 <-- 이부분 간과하시는분이 너무 많더라구요...통신은 무조건 큐
관리되겠슈?
1 processer - thread 개념으로...
윈도우에서 프로세스는 exe 입니다. 물론 cpu에서 처리는 유닉스와 다릅니다. 멀티 스레드처럼 처리합니다.
제가 발한건 exe 가 방생성 할때마다 만들어진다면 그걸 어떻게 제어 하냐는 말입니다.
프로세스를 강제로 죽이고 생성하는 것이 스레드 처럼 쉽지 않습니다.
원 프로세스상 큐에 담긴 멀티 스레드라 정답 입니다.
다만 접속자가 많다면 여러 프로세스를 고정으로 두고 에이젼시로 분할하는 방법이 일반적입니다.
1 processer - 메세지큐 - 방( child 생성 ) - 해당 방에 접속자 ( Thread 처리 )
- 방( child 생성 ) - 해당 방에 접속자 ( Thread 처리 )
- 방( child 생성 ) - 해당 방에 접속자 ( Thread 처리 )
또는
1 processer - 방( child 생성 ) - 메세지큐 - 해당 방에 접속자
- 방( child 생성 ) - 메세지큐- 해당 방에 접속자
- 방( child 생성 ) - 메세지큐 - 해당 방에 접속자
위에서 child 은 form 없은 메모리로만 처리하는 방식부터 여러 방식이 존재합니다.
unix
fork 생성( 2가지 방식이 존재) 후
processor 단위로 관리 <-- 이것은 여러 방식이 존재해서 하기 나름입니다.
같은 말아닌가요?
그런데, 화 나신것 같은...?
저는 그냥 의견을 나누기 위해 적은것뿐인데요..
할당하는게 낳을까요?"
이게 질문 입니다.
이말은 채팅방이 개설되면 exe를 만든다는 뜻같은 아닌가요?
제가 오히려 두 분께 죄송해지네요;;;
아무튼
지금 두 분의 의견을 보고 있는데 헷갈리는군요.
각각의 포트가 할당된 프로그램을 개별적 실행시켜서 하는게 더 효율적일것 같다는건지..?
아니면 하나의 포트를 지정한 프로그램안에서 방 구부만 분류하여 처리하는게 낫다는건지...?
일단 두분의 대화를 더 듣고 싶긴하네요.