【问题标题】:Python Tornado Web Service Cron Restart How?Python Tornado Web Service Cron 重启如何?
【发布时间】:2016-09-05 03:44:00
【问题描述】:

失败代码:

root = os.path.dirname(__file__)
static_application = tornado.web.Application([
    (r"/(.*)", tornado.web.StaticFileHandler, 
    {"path": root, "default_filename": "Example.html"})
])

if __name__ == "__main__":
    print "Starting Server..."
    static_application.listen(8080)
    tornado.ioloop.IOLoop.instance().start()

iptables 失败:

Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination         
1    REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80 redir ports 8080

失败的html:

<!DOCTYPE HTML>
<html>
    <head>
    <link href='StyleFile0.css'     rel='stylesheet' type='text/css' />
    <link href='StyleFile1.css'     rel='stylesheet' type='text/css' />

    <script src='ScriptFile0.js'    type='text/javascript'> </script>
    <script src='ScriptFile1.js'    type='text/javascript'> </script>

Cron 失败:

 0 * * * * cd /home/maindude/CodeHome && timeout -k 59m 59m python Process_TornadoService.py

.js .css 浏览器控制台“GET”失败:


所以我想出了如何托管一个基本的龙卷风网络服务。

我创建了一个亚马逊服务器并将其扔到那里,一切都很好。

然后我想让服务停止并每隔一小时重新启动一次。

如果我在 80 端口上托管 -> 我需要 sudo 权限才能启动服务,因此 cron 失败

如果我在端口 8080 上托管服务 -> 我必须使用 iptables

如果我使用 iptables -> 我在 html 中的脚本依赖项似乎神秘地不可用。


python、tornado、html、cron、iptables 的正确组合是什么,可以解决这个问题并让 tornado 服务每小时死掉并重新启动?

编辑:

上面的一切都可以很好地实现这一点。

【问题讨论】:

  • 我怀疑是否有可能在不中断的情况下做到这一点。为什么不使用uwsgi 进行部署?更适合生产/登台环境的东西?
  • 我一定是疯了,因为今天早上一切似乎都正常,而我没有改变任何东西
  • 我现在正在重新启动服务器以检查 - 如果它有效,我将回答我自己的问题

标签: python cron tornado iptables


【解决方案1】:

好吧 - 事实证明 -> 我没有足够的耐心......

上述代码、cron、html、javascript 和 iptables 都可以完美运行,以在亚马逊网络服务器上的 8080 端口上使用 tornado 重新启动服务器。

史诗般的庆祝活动随之而来

【讨论】:

    猜你喜欢
    • 2012-04-15
    • 2014-07-31
    • 1970-01-01
    • 1970-01-01
    • 2015-12-11
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 2016-06-24
    相关资源
    最近更新 更多