2010-08-07 3 views
0

그래서 웹 사이트가 이미 설정되어 있고 채팅 응용 프로그램에 혜성 서버가 필요합니다. 이 사이트는 twisted.web로 구축되었으며 이미 익숙한 이래로 꼬인 혜성 서버를 만들고 싶습니다.twisted.web 사이트에서 twisted.web 사이트를 구축하십시오.

하지만 어떻게해야할지 모르겠습니다. 나는 this post을보고 코드 스 니펫의 메 커닉을 이해했습니다.하지만 시도해 보니 페이지에 AGES가로드되고 시간이 지나면 이미 시간이 가득 차고 계속 추가됩니다.

이것이 어떻게 작동 할 것인가에 대한 아이디어는 별도의 프로세스로 실행하고 다른 사이트에서 내 트위스트 된 사이트를 실행하는 것입니다. 뒤틀린 사이트의 페이지에는 응답을 기다리는 혜성 서버에 대한 ajax 호출이 있습니다. 그러나 그 응답은 페이지로드처럼 돌아 오기까지 시간이 오래 걸릴까요?

그리고 혜성 서버는 웹 사이트 서버로부터 어떻게 데이터를 얻는 것이 가장 좋을까요? 웹 사이트를 폴링하지 않거나 혜성 서버가 없을 수도 있습니다. 혜성 서버의 GET 처리기에 무한 루프를 넣고 웹 사이트에 호출하고 인터럽트를 보내겠습니까? 혜성 서버와 웹 사이트는 어떻게 데이터를 공유합니까? 마찬가지로, 혜성 서버는 사용자의 세션 데이터, 즉 그들이 누구인지, 그들이 무엇을 기다리고 있는지, 그들이 무엇을 보낼 수 있는지에 대해 알 수 있습니까?

또한 이것에 대해서는 잘 모르겠지만 혜성 서버에 스레딩을 통합해야합니까, 아니면 이미 다중 스레드입니까?

답변

1

Twisted를 기반으로하는 혜성 서버 인 Orbited를 사용하여 웹 서버와 동일한 프로세스에서 실행할 수 있습니다. 꽤 매끄럽다. 내장 프록시를 사용하는 대신, 직접 내장을 사용해야합니다. 다음과 같이하면됩니다.

from orbited.cometsession import Port 
... 
reactor.listenWith(Port, factory=someFactoryYouWrote, resource=someResourceYouWrote, childName='tcp') 
+0

감사합니다. –

관련 문제