【发布时间】:2015-01-06 08:54:14
【问题描述】:
我有一个在 Ruby 2.1.1 上运行 Rails 4.1.5 的 heroku 应用程序。
该应用程序涉及一些媒体处理,并涉及使用 dropzone JS 的 javascript 上传功能,该操作将照片保存在 Amazon S3 上,然后在后台作业中进行后续处理。
我遇到了一个非常令人沮丧的问题。 Heroku 路由器间歇性地 - 并且取决于 Internet 连接的速度 - 以 H15(空闲连接)状态终止上传操作。我不相信连接真的闲置了,因为使用相同的互联网连接,我可以将类似的文件上传到其他站点。
这与网络测功机的超时无关,因为在路由器首先将其关闭的情况下,请求永远不会到达测功机。
这里会发生什么?
注意:我已经实现了这种 CORS 处理技术: http://www.tsheffler.com/blog/?p=428
日志:
[Timestamp] heroku[router]: at=error code=H15 desc="Idle connection" method=POST path="/console/breeds/57-YAMTALE/photos" host=[host] request_id=634d7680-8b66 -4123-a4bc-fe78dc4e7b90 fwd="[IP]" dyno=web.1 connect=0ms service=90232ms status=503 bytes=0
过程文件:
web: bundle exec rails server thin -p \$PORT -e \$RACK_ENV
可能相关的宝石:
宝石'薄'
gem '载波'
gem 'carrierwave_backgrounder'
gem 'rmagick', :require => 'RMagick'
gem 'aws-sdk'
gem 'rack-cors', :require => 'rack/cors'
gem '守护进程'
gem 'exception_notification'
【问题讨论】:
标签: ruby-on-rails ruby heroku upload timeout