【问题标题】:Heroku and TwistedHeroku 和 Twisted
【发布时间】:2013-01-09 15:55:21
【问题描述】:

我正在尝试学习 Twisted,一个 Python 框架,我想将一个基本的应用程序放到网上,当它收到一条消息时将它发回。我决定使用 Heroku 来托管它,并按照他们文档上的说明进行操作。

import os
from twisted.internet import protocol, reactor

class Echo(protocol.Protocol):
    def dataReceived(self, data):
        self.transport.write(data)

class EchoFactory(protocol.Factory):
    def buildProtocol(self, addr):
        return Echo()

port = int(os.environ.get('PORT', 5000))
reactor.listenTCP(port, EchoFactory(), interface = '0.0.0.0')
reactor.run()

除了(我知道这是一个愚蠢的问题)之外,它一切正常,我该如何向它发送消息?当我在本地工作时,我只做telnet localhost <port>,但现在我不知道。 另外,由于 heroku 连接到一个随机端口,我怎么知道它将我的应用程序连接到哪个端口? 谢谢。

【问题讨论】:

    标签: python heroku twisted telnet


    【解决方案1】:

    我对 Twisted 不是很熟悉,但我不确定 Heroku 是否支持您尝试执行的操作。 Heroku 目前只支持 HTTP[S] 请求,不支持原始 TCP。 answers to this question有更多详情。

    如果您想连接到您的应用,您应该使用myapp.herokuapp.com 主机名或您添加的任何自定义域。

    【讨论】:

      【解决方案2】:

      “Cedar 完全支持纯 Python 应用程序,例如无头进程和事件 Web 框架(如 Twisted)。”

      参考:https://devcenter.heroku.com/articles/python-support

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-29
        • 1970-01-01
        • 2011-05-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多