擅长:python、mysql、java
<p>这个问题更多的是关于高层架构的决策,以及你想要完成什么,而不是你应该做的一件特定的事情。在</p>
<p>归根结底,Flask可能不是应用程序的最佳选择。使用纯python或纯ruby会更好。这么说来,使用Heroku调度器(您已经提到过了)使您能够像您正在尝试的那样做一些事情。在</p>
<p>实现目标的最简单方法(假设您希望更改最少的代码,并且不断读取数据才是您真正想要做的。这两种方法都应该考虑)编写一个循环,在调用该任务并获取数据几秒钟后运行。只需使用for循环并增加一个计数器,无论您想获得多少次数据。在</p>
<p>比如:</p>
<pre><code>for i in range(0,5):
key = 'FEED_KEY'
feedid = 'FEED_ID'
client = xively.XivelyAPIClient(key)
feed = client.feeds.get(feedid)
datastream = feed.datastreams.get("level")
level = datastream.current_value
time.sleep(1)
</code></pre>
<p>然而,Heroku对返回值之前的运行时间有限制。否则路由器将返回503或500。但是你可以使用调度器来安排它每一段时间运行一次。在</p>
<p>再说一次,我认为Flask and Heroku并不是你想要做的最好的解决方案。我会回顾一下你的用例,然后回到绘图板上,找出实现它的最佳方法。在</p>