我用过网页.py创建一个以json格式返回结果的web服务。在
我以python scriptname.py 8888
的身份在本地机上运行它
但是,我现在想在linux机器上运行它。在
如何在linux机器上作为服务运行它?在
更新
答案出来后,这个问题似乎不对。我了解部署过程、框架和web服务器。也许下面的背景故事会有所帮助:
我有一个小python脚本,它将一个文件作为输入,并基于一些逻辑拆分文件。我想把这个脚本用于我已经准备好的web前端(Grails)。我想从grails应用程序调用它,但不想通过执行命令行来实现。所以我把python脚本包装成一个webservice。它接受两个参数,并在json中返回分割文件的数量。这个webservice只会被grails前端使用。在
所以,我只想运行这个小网页.py服务,以便它可以响应我的grails前端。在
如果我错了,请纠正我,但我还需要ngix之类的吗?这个脚本听起来很简单,但最终我会给它添加更多的逻辑,所以我希望它作为一个可以被web前端使用的web服务。在
一般来说,这有两个部分。在
“远程和基于事件的”部分:通过网络远程使用的服务需要一定的技能:能够接受(多个)连接、读取请求、处理、回复、至少讲基本的TCP/HTTP、处理死连接,如果是小型专用LAN,它需要是健壮的(想想DoS),也许还需要执行某种身份验证。在
如果您的脚本愿意处理所有这些问题,那么它就可以打开自己的端口并进行侦听。我不确定是否网页.py提供所有这些设施。在
还有另一个部分是“daemonization”,当您想在无人值守的情况下运行服务器:在引导时运行,在正确的用户下运行,不阻止您的父级(ssh、init脚本或其他任何东西),不打开tty,但可能会在某个地方登录。。。在
nginx和Apache等服务器就是为此而构建的,它们提供mod_python或WSGI等接口,这样更简单的应用程序就可以尽可能多地放弃上述功能。在
所以答案是:是的,你仍然需要Nginx或类似的东西,除非:
您可以自己用Python实现它,
或者您只在本地主机上使用脚本,并且愿意使用一些脚本 不稳定的风险。
那你就可以自己动手了。在
试试这个
它将作为守护进程运行
相关问题 更多 >
编程相关推荐