1. 程式人生 > >aws實例部署flask報錯script-timed-out-before-returning-headers-application-py

aws實例部署flask報錯script-timed-out-before-returning-headers-application-py

result 鎖定 Owner 廣告 book 超時 task script 應用

來源:http://www.aisir.cn/2017/07/15/aws實例部署flask報錯script-timed-out-before-returning-headers-application-py/

[Thu Jul 13 13:21:32.542375 2017] [core:error] [pid 25744] [client 127.0.0.1:48852] Script timed out before returning headers: application.py
[Thu Jul 13 13:21:32.618324 2017] [core:error] [pid 25672] [client 127.0.0.1:48754] Script timed out before returning headers: application.py
[Thu Jul 13 13:21:33.517055 2017] [core:error] [pid 25702] [client 127.0.0.1:48846] Script timed out before returning headers: application.py
[Thu Jul 13 13:21:33.593206 2017] [core:error] [pid 25722] [client 127.0.0.1:48814] Script timed out before returning headers: application.py

這是一個被困擾需求的問題,接收SQS發來的消息總量有一萬多條,並不是很多,一直以來是以為flask框架的問題,所以解決方法一直是

產生的背景:

抓取Facebook廣告數據並通過aws的SQS分發處理,SQS數量在萬級,同時提取廣告數據中的圖片視頻信息,執行時間多消耗在網絡請求。

問題解決:

配置機器實例

可見性超時():3600

官方解釋:在將入站消息返回隊列之前將其鎖定以供處理的秒數。明白的說就是大於應用處理SQS消息的時間設置

官方解釋 :在現有連接上等待來自應用程序的響應的秒數。即等多久就報time out錯誤,也就是上面看到的報錯。

註意:

Stack Overflow上對於該問題的解決方式是,在.ebextensions中命令,測試無效

:files:
"/etc/httpd/conf.d/wsgi_custom.conf":
mode: "000644"
owner: root
group: root
content: |
WSGIApplicationGroup %{GLOBAL}

aws實例部署flask報錯script-timed-out-before-returning-headers-application-py