我的Flask应用程序响应时间

2024-05-15 11:59:09 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我正在使用docker+Flask+Gunicorn+SQLAlchemy构建一个RESTful服务。 但是,有时在执行SQL时会超时。在

这是我的引擎:

def get_sybase_us_engine(self):
    from spa_manager import spa_config
    new_sybase_engine = create_engine(spa_config["SYBASE_URL"], connect_args=spa_config["SYBASE_CONN_ARGS"], echo=True, echo_pool=True, pool_size=10)
    return new_sybase_engine

没错,西贝斯。在

以下是我如何使用引擎:

^{pr2}$

但是在我的Gunicorn日志中,有一段时间工作超时(pid265)。在

[2018-07-23 17:24:24 +0000] [265] [DEBUG] POST /spa-automation/public/api/sql-test-us
[2018-07-23 17:24:24 +0000] [259] [DEBUG] POST /spa-automation/public/api/sql-test-ca
[2018-07-23 17:26:40 +0000] [301] [DEBUG] POST /spa-automation/public/api/sync-spa-info
[2018-07-23 17:26:40 +0000] [271] [DEBUG] POST /spa-automation/public/api/cust-refresh
[2018-07-23 17:29:24 +0000] [301] [DEBUG] POST /spa-automation/public/api/sql-test-local-mysql
[2018-07-23 17:29:24 +0000] [283] [DEBUG] POST /spa-automation/public/api/sql-test-mysql
[2018-07-23 17:29:24 +0000] [295] [DEBUG] POST /spa-automation/public/api/sql-test-ca
[2018-07-23 17:29:24 +0000] [289] [DEBUG] POST /spa-automation/public/api/sql-test-us
[2018-07-23 17:31:40 +0000] [289] [DEBUG] POST /spa-automation/public/api/cust-refresh
[2018-07-23 17:31:40 +0000] [283] [DEBUG] POST /spa-automation/public/api/sync-spa-info
[2018-07-23 17:34:24 +0000] [289] [DEBUG] POST /spa-automation/public/api/sql-test-mysql
[2018-07-23 17:34:24 +0000] [271] [DEBUG] POST /spa-automation/public/api/sql-test-us
[2018-07-23 17:34:24 +0000] [259] [DEBUG] POST /spa-automation/public/api/sql-test-ca
[2018-07-23 17:34:24 +0000] [295] [DEBUG] POST /spa-automation/public/api/sql-test-local-mysql
[2018-07-23 17:36:40 +0000] [289] [DEBUG] POST /spa-automation/public/api/sync-spa-info
[2018-07-23 17:36:40 +0000] [259] [DEBUG] POST /spa-automation/public/api/cust-refresh
[2018-07-23 17:39:24 +0000] [289] [DEBUG] POST /spa-automation/public/api/sql-test-us
[2018-07-23 17:39:24 +0000] [283] [DEBUG] POST /spa-automation/public/api/sql-test-ca
[2018-07-23 17:39:24 +0000] [295] [DEBUG] POST /spa-automation/public/api/sql-test-mysql
[2018-07-23 17:39:24 +0000] [277] [DEBUG] POST /spa-automation/public/api/sql-test-local-mysql
[2018-07-23 17:39:25 +0000] [7] [CRITICAL] WORKER TIMEOUT (pid:265)

这是我的项目日志:

[2018-07-23 17:24:25,425] - spa_test_us_view.py [Line:32] - [INFO]-[thread:140514956412672]-[process:265] - US connection established!
[2018-07-23 17:24:25,426] - log.py [Line:109] - [INFO]-[thread:140514956412672]-[process:265] - 
        select top 10 * from part_master

[2018-07-23 17:24:25,426] - log.py [Line:109] - [INFO]-[thread:140514956412672]-[process:265] - ()

这个流程:265个挂起没有更多的日志流程:265在

以下是我如何在dockerfile中启动我的Gunicorn:

ENTRYPOINT gunicorn -w 8 spa_manager:spa_app -b 0.0.0.0:80 --log-level=debug --timeout 900

顺便说一句,如果我不使用flask和Gunicorn,只要使用Python脚本,就不会发生超时。在

出什么问题了?我不知道。。。在


Tags: debugtestapiconfigsqlmysqlpublicpost