我正在使用Pylons做两件事:
1)提供API请求(返回描述我的SQLAlchemy模型的JSON)
2)运行一个24/7脚本,从互联网上获取航班信息(使用HTTP)并将其推送到我的数据库中(再次使用我的模型)。
我不是使用Pylons作为前端,而是作为后端。
我的脚本发出HTTP请求的最佳方式是什么? urllib / urllib2是我最好的选择吗?
如何持续运行我的脚本而不是基于请求服务? Celery / Cronjobs是我在这里寻找的吗?
谢谢!
答案 0 :(得分:0)
关于你的第一个问题:是的,urllib / urllib2可能是最好的选择。它具有非常可靠的功能,可以向其他人发出HTTP请求。
关于第二个问题:使用您的数据库。它不是超级可扩展的,但是很容易实现一个系统,你在数据库中有一个标志,实际上是应用程序的开关。一旦存在,创建一个页面(使用您认为谨慎的安全预防措施)设置标志并在循环上启动应用程序,只要设置了标志,循环就会无限期地继续。如果您需要在不中断整个服务器进程的情况下停止HTTP请求,则第二页将清除该标志。它们也可以是shell脚本或短独立脚本,而不是“页面”。重要的是你可以在不需要Celery或cron的情况下实现这一点(尽管如果你已经熟悉它们,请参加)。