作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 tweetstream
gem 连接到 twitter API,如图 here 。它工作正常,但是当我停止并重新启动流时,因为我正在更改处理流的方式,在 2 小时左右重新启动大约 5 次之后,流停止向我提供更新,并且 on_reconnect
事件每 30 秒左右就会发生一次。
我认为这是因为这会触发速率限制,或者是因为在启动新连接之前先前的连接没有被终止。有没有正确的方法来做到这一点?
最佳答案
我不太确定问题的原因,但这就是我所做的:
更新库( bundle 更新)。 github 问题上的讨论似乎暗示底层 EventMachine gem 可能存在导致连接问题的错误,该错误已在最新版本中修复。
确保您的系统时间是现实的。至少有一次,我的系统时间(未与互联网时钟同步)与实时时间相差超过 30 分钟,并且我的请求 token 因无效(已过期或将来签名)而被拒绝。
将流读取器包装在 Daemon 中。为守护进程提供 {:monitor => true}
选项,以便在作业终止时它将重新启 Action 业。这种情况在我的服务器上每周都会发生几次,并出现超时错误(我猜是 API 端服务中断,或者我自己的互联网连接出现问题)。这更像是一个创可贴,因为它一开始就不应该真正消失,但它把这个问题推到了我的优先列表中足够靠后的位置,我目前并不担心它。
关于ruby-on-rails - 推文流停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11182164/
我是一名优秀的程序员,十分优秀!