对我们的后端 Django 应用程序(使用 ECS 和 Postgres RDS 部署在 AWS 上)的请求中有 20% 会引发 500 错误。查看 ECS 日志,显示了各种相关错误:
psycopg2.OperationalError: could not translate host name "abc.efg.us-east-1.rds.amazonaws.com" to address
OSError: [Errno 16] Device or resource busy
<built-in function getaddrinfo>) failed with OSError
我们使用 gunicorn 和 gevent 来服务我们的应用程序:
gunicorn -t 1000 -k gevent -w 4 -b 0.0.0.0:8000 backend.wsgi