Thumbor On Heroku在取回URL返回时导致heroku超时404
我们在Heroku上托管了我们的thumbor图像调整大小服务,图像存储在aws s3中。 Thumbor服务通过aws插件访问s3。 最近我们观察了我们不明白的thumbor服务的行为。Thumbor On Heroku在取回URL返回时导致heroku超时404
使用案例:我们的客户端应用程序发送调整大小请求以调整aws S3中不存在的图像的大小。
预期的行为:
- 的thumbor服务在S3中获取图像。
S3中找不到404
thumbor返回404的Heroku,路由器返回404客户端应用程序。
我们观察到: 在某些情况下(我不能一致地重现这一点)。 s3会返回404,但thumbor不会让heroku路由器知道。因此,heroku等待30秒,并将请求返回为503超时。
的流动是日志
2016-05-31T19:38:15.094468 + 00:00应用程式[web.1]:2016年5月31日19点38分15秒thumbor:警告ERROR检索从S3 [桶]/3C6A3A84-F249-458B-9EFA-BF9BC863874B图像:{ 'ResponseMetadata':{ 'HTTPStatusCode':404, '的requestId': '3D61A8CBB187D846', 'HOSTID': 'C1qYC9Au42J0Salt1SVlCkcvcrKcQv4dltwOCdwGNF1TUFScWpkHb1qC++ ZBJ0JzVqQlXW0xONU ='}, 'Error':{'Key':'[bucket]/3C6A3A84-F249-458B-9EFA-BF9BC863874B','Code':'NoSuchKey','Message':'指定的密钥不存在。}}
2016-05-31T19:38:14.777549 + 00:00 heroku [router]:at = error code = H12 desc =“请求超时“method = GET path =”/ bALh_vgGXd7e_J7kZ0GhyE_lhZ0 =/150x150/[bucket]/3C6A3A84-F249-458B-9EFA-BF9BC863874B“host = heroku.app.com request_id = 67d87ea3-8010-4fbe-8c29-b2b7298f1cbc fwd =”54.162。 233.176,54.240.144.43" DYNO = web.1连接= 5ms的服务= 30000ms状态= 503个字节= 0
我想知道如果有人可以帮助理解为什么thumbor挂起?
非常感谢提前!
这个问题在我们正在使用的tc_aws库上。当从S3返回404时,它不执行回调函数。我们的版本是2.0.10。升级库后,问题得到解决。