从Web应用程序在远程服务器上运行命令

时间:2012-03-23 13:32:51

标签: python

我遇到以下问题:我必须在Web应用程序(播放)中运行远程服务器上的命令,但是从Web服务器我没有对远程服务器的ssh访问权限。我唯一拥有的是,远程服务器可以通过http(s)访问Web服务器。

我的想法是创建一个python守护程序,它会轮询一个通过JSON返回所请求命令的URL。

这是个好主意吗?是否有一个可以帮助客户的框架?

BR Rene

2 个答案:

答案 0 :(得分:3)

  

我的想法是创建一个python守护程序,它会轮询返回的URL   通过JSON请求的命令。

这实际上是一个消息代理。因此,不要自己编写一个,而是使用任何可用的消息代理,例如rabbitmq,它们具有Java绑定以及您将在目标服务器上运行的任何语言。

从您的Web服务器,向代理发送消息。这将触发目标服务器上的工作人员“唤醒”并执行某项任务。然后,您也可以选择在消息代理中获取结果,或者将其写入某个公共存储(例如更新一些k / v存储,或写入公共数据库)。

答案 1 :(得分:0)

看来你可以用 pyro 进行远程调用,你可以调用远程python对象。 Python Remote Objects是一个完全用Python编写的分布式对象系统,仅用于Python。它小巧,简单,免费。请在此处查看:pyro