2013-07-23 1 views
0

현재 다음과 같은 요구 사항이있는 프로젝트에 참여하고 있습니다. 응용 프로그램은 Python으로 작성사용자 정의 포트에 바인드 할 포트 포워딩이없는 /없는 적은 무료 PaaS?

  1. ,

  2. 응용 프로그램은 인스턴스에서 실행되는 두 개의 스레드를 가지고, 하나는 '서버'이고 다른 하나는 '앱 로직'입니다.

  3. 서버는 포트 6000 (또는 이와 유사한 사용자 지정 포트)에서 수신 대기하고 수신 메시지 (일반 텍스트 명령)를 읽은 다음 해당 메시지를 app-logic으로 전달한 다음 해당 입력을 처리하고 출력을 생성하며, 그런 다음 아웃 바운드 메시지를 서버로 전달합니다.

  4. 가 가
  5. 서버는 다음 클라이언트의 포트 7000에 기록

을 (또는 그러한 고정 포트, 클라이언트가 특별히 자신의 전술 포트에서 읽으려고한다) 지금까지 내가 Google- 시도 App-Engine을 사용하고 스레딩과 관련된 문제로 인해 보겠습니다. 나는 OpenShift를 시도하고 사용자 지정 포트에 바인딩을 지원하지 않았습니다. 그들은 단지 8080 포트 (그것은 괜찮습니다)에 바인딩을 지원하지만, 그곳에서 그들은 다른 곳에서 트래픽을 포워딩했습니다. 그래서 내 응용 프로그램에서 '서버'는 인바운드 스트림이 사이트에 할당 된 것과 동일한 컴퓨터의 다른 포트에서 읽히고, 메시지는 HTTP 형식이 아니기 때문에 글을 쓸 방법이 없습니다. 다시 클라이언트에게.

이 성격의 앱을 지원하는 PaaS가 있습니까?

업데이트 : 저는 약간의 시간을두고 다시 프로젝트를 마쳤습니다. pubnub 또는 pusher와 같은 제 3 자 메시징 서비스를 사용하면이 문제를 해결할 수 있습니다.

답변

0

나는 편도가 있음을 발견했습니다! 그것은 Openshift에서 DIY 카트리지 (Do it yourself)를 사용하고, Python을 설치하고 "Websockets"을 실행하는 것입니다. 물론 이것은 여전히 ​​전송이 HTTP 여야 함을 의미합니다.

다른 옵션은 PaaS가 아닌 IaaS (서비스로서의 인프라)로 이동하는 것입니다.

0

포트에서 말하고 싶거나 내부적으로 만 사용하려는 경우 임의의 포트에 바인딩 할 수도 있습니다. 예를 들어 포트 6666 또는 6667로 나가는 OpenShift를 사용하는 IRC 봇을 작성하는 사람들이 있습니다. 바깥 쪽 개통식에서 오는 요청을 듣고 싶다면 8080

관련 문제