1分钟后,Elastic Beanstalk Worker的SQS守护程序获得504网关超时

蒂亚戈·法尔·马托斯(Tiago Fael Matos)

我有一个Elastic Beanstalk工作者,一次只能运行一个任务,而且需要花一些时间(从几分钟到希望少于30分钟),所以我要在SQS上排队我的任务。

在我的工作人员配置中,我有:

HTTP connections: 1
Visibility timeout: 3600
Error visibility timeout: 300

(On "Advanced")
Inactivity timeout: 1800

问题是似乎有一个1分钟的超时(在nginx上),它覆盖了“不活动超时”,返回了504(网关超时)。

这是我可以在aws-sqsd.log文件中找到的:

2016-02-03T16:16:27Z init: initializing aws-sqsd 2.0 (2015-02-18)
2016-02-03T16:16:27Z start: polling https://sqs.eu-central-1.amazonaws.com/855381918026/jitt-publisher-queue
2016-02-03T16:23:36Z message: sent to %[http://localhost:80]
2016-02-03T16:24:36Z http-err: 1444d1ba-ecb5-46f8-82d6-d0bf19b91fad (1) 504 - 60.006
2016-02-03T16:28:54Z message: sent to %[http://localhost:80]
2016-02-03T16:29:54Z http-err: 1b7514d3-689a-4e8b-a569-5ef1ac32ed0c (1) 504 - 60.029
2016-02-03T16:29:54Z message: sent to %[http://localhost:80]
2016-02-03T16:29:54Z http-err: 1444d1ba-ecb5-46f8-82d6-d0bf19b91fad (2) 500 - 0.006
2016-02-03T16:33:49Z message: sent to %[http://localhost:80]
2016-02-03T16:34:49Z http-err: 3a43e80f-a8d3-46b2-b2a0-9d898ad4f2a6 (1) 504 - 60.023
2016-02-03T16:34:54Z message: sent to %[http://localhost:80]
2016-02-03T16:34:54Z http-err: 1b7514d3-689a-4e8b-a569-5ef1ac32ed0c (2) 500 - 0.004
2016-02-03T16:34:54Z message: sent to %[http://localhost:80]
2016-02-03T16:34:54Z http-err: 1444d1ba-ecb5-46f8-82d6-d0bf19b91fad (3) 500 - 0.003
2016-02-03T16:39:49Z message: sent to %[http://localhost:80]
2016-02-03T16:40:49Z http-err: 3a43e80f-a8d3-46b2-b2a0-9d898ad4f2a6 (2) 504 - 60.019

某些事情在这里是有意义的,例如从504/500开始直到再次将任务重新发送给工作人员为止,每条消息需要5分钟的延迟(与“错误可见性超时”的300秒配置相匹配) 。

那500个代码与我当前的逻辑相符:如果仍然有东西在运行,工作人员通过将500退回来拒绝任务。

我已经看到很多关于设置负载均衡器连接超时设置的答案,但是,由于这是一个从SQS队列中提取消息的工作人员,因此没有负载均衡器。

我应该怎么做才能覆盖那1分钟的超时设置吗?

蒂亚戈·法尔·马托斯(Tiago Fael Matos)

由于我有时间更好地进行研究,因此解决方案是添加一个ebextension来配置代理超时设置:

files:
    "/etc/nginx/sites-available/elasticbeanstalk-nginx-docker-proxy-timeout.conf":
        mode: "000644"
        owner: root
        group: root
        content: |
            proxy_connect_timeout       3600;
            proxy_send_timeout          3600;
            proxy_read_timeout          3600;
            send_timeout                3600;
commands:
    "00nginx-create-proxy-timeout":
        command: "if [[ ! -h /etc/nginx/sites-enabled/elasticbeanstalk-nginx-docker-proxy-timeout.conf ]] ; then ln -s /etc/nginx/sites-available/elasticbeanstalk-nginx-docker-proxy-timeout.conf /etc/nginx/sites-enabled/elasticbeanstalk-nginx-docker-proxy-timeout.conf ; fi"

资料来源:http : //cloudavail.com/2015/10/18/allowing-long-idle-timeouts-when-using-aws-elasticbeanstalk-and-docker/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从AWS Elastic Beanstalk下载应用程序

来自分类Dev

使用Elastic Beanstalk部署.NET Worker应用

来自分类Dev

Python:等待用户输入,如果10分钟后仍未输入,则继续执行程序

来自分类Dev

1小时22分钟后,SSE(EventSource)超时。有什么办法可以保持持久性吗?

来自分类Dev

默认期限后(20分钟),MVC 5会话超时

来自分类Dev

Node.js:http请求在1分钟后超时

来自分类Dev

由于Testimpact,在00:15:00分钟后建立超时

来自分类Dev

安装php curl后出现504网关超时/ 502网关错误-服务器Nginx

来自分类Dev

Amazon Elastick BeanStalk错误:无法创建AWS Elastic Beanstalk应用程序版本

来自分类Dev

ExpressJS-Elastic Beanstalk 502错误网关

来自分类Dev

十分钟后svnsync超时

来自分类Dev

使用管道进行多处理-应用程序始终在约5分钟后停止

来自分类Dev

SparkR作业100分钟超时

来自分类Dev

启动后一分钟,Spark会释放所有执行程序

来自分类Dev

Java的挂起一分钟后,一个程序完成

来自分类Dev

Nginx上的Flask应用在1分钟后超时

来自分类Dev

连接到ELB / Elastic Beanstalk时Cloudfront抛出504

来自分类Dev

更改Gunicorn Elastic Beanstalk的超时

来自分类Dev

无法增加AWS Elastic Beanstalk的超时

来自分类Dev

创建Elastic Beanstalk应用程序失败

来自分类Dev

在Amazon Elastic Beanstalk上守护PHP脚本(SQS侦听器)

来自分类Dev

5分钟后的任务计划程序

来自分类Dev

屏幕(非锁定屏幕)超时停留在1分钟后

来自分类Dev

每分钟运行一次cron作业,nginx上发生504网关超时

来自分类Dev

Windows 8和Windows 10 Lockscreen在仅1分钟后超时,并且屏幕变黑

来自分类Dev

除非按键,我如何在10分钟后启动程序?

来自分类Dev

在HttpClient postAbs Vert.x中2分钟后获得响应

来自分类Dev

1分钟后截图

来自分类Dev

在 Elastic Beanstalk 上启动 SQS celery worker

Related 相关文章

  1. 1

    从AWS Elastic Beanstalk下载应用程序

  2. 2

    使用Elastic Beanstalk部署.NET Worker应用

  3. 3

    Python:等待用户输入,如果10分钟后仍未输入,则继续执行程序

  4. 4

    1小时22分钟后,SSE(EventSource)超时。有什么办法可以保持持久性吗?

  5. 5

    默认期限后(20分钟),MVC 5会话超时

  6. 6

    Node.js:http请求在1分钟后超时

  7. 7

    由于Testimpact,在00:15:00分钟后建立超时

  8. 8

    安装php curl后出现504网关超时/ 502网关错误-服务器Nginx

  9. 9

    Amazon Elastick BeanStalk错误:无法创建AWS Elastic Beanstalk应用程序版本

  10. 10

    ExpressJS-Elastic Beanstalk 502错误网关

  11. 11

    十分钟后svnsync超时

  12. 12

    使用管道进行多处理-应用程序始终在约5分钟后停止

  13. 13

    SparkR作业100分钟超时

  14. 14

    启动后一分钟,Spark会释放所有执行程序

  15. 15

    Java的挂起一分钟后,一个程序完成

  16. 16

    Nginx上的Flask应用在1分钟后超时

  17. 17

    连接到ELB / Elastic Beanstalk时Cloudfront抛出504

  18. 18

    更改Gunicorn Elastic Beanstalk的超时

  19. 19

    无法增加AWS Elastic Beanstalk的超时

  20. 20

    创建Elastic Beanstalk应用程序失败

  21. 21

    在Amazon Elastic Beanstalk上守护PHP脚本(SQS侦听器)

  22. 22

    5分钟后的任务计划程序

  23. 23

    屏幕(非锁定屏幕)超时停留在1分钟后

  24. 24

    每分钟运行一次cron作业,nginx上发生504网关超时

  25. 25

    Windows 8和Windows 10 Lockscreen在仅1分钟后超时,并且屏幕变黑

  26. 26

    除非按键,我如何在10分钟后启动程序?

  27. 27

    在HttpClient postAbs Vert.x中2分钟后获得响应

  28. 28

    1分钟后截图

  29. 29

    在 Elastic Beanstalk 上启动 SQS celery worker

热门标签

归档