jack 1 ay önce
ebeveyn
işleme
49c64da806
2 değiştirilmiş dosya ile 31 ekleme ve 1 silme
  1. 2 1
      docker/entrypoint.sh
  2. 29 0
      gunicorn_config.py

+ 2 - 1
docker/entrypoint.sh

@@ -12,5 +12,6 @@ if [[ "${MODE}" == "worker" ]]; then
   celery -A worker.celery_app worker -c ${CELERY_WORKERS:-1} -l INFO
 else
   #uvicorn main:app --host 0.0.0.0 --port 8086 --workers ${APP_SERVER_WORKERS:-1}
-  gunicorn -w 4 -t ${APP_SERVER_WORKERS:-1} -k uvicorn.workers.UvicornWorker --bind 0.0.0.0:8086 main:app
+  poetry run gunicorn -c gunicorn_config.py main:app
+  #gunicorn -w 4 -t ${APP_SERVER_WORKERS:-1} -k uvicorn.workers.UvicornWorker --bind 0.0.0.0:8086 main:app
 fi

+ 29 - 0
gunicorn_config.py

@@ -0,0 +1,29 @@
+# 预加载资源
+# preload_app = True
+
+# 绑定 ip + 端口
+bind = "0.0.0.0:8001"
+# 进程数 = cup数量 * 2 + 1
+workers = 4
+
+# workers = 1
+
+# 线程数 = cup数量 * 2
+threads = 20
+
+# threads = 1
+# 等待队列最大长度,超过这个长度的链接将被拒绝连接
+backlog = 204800
+
+# 工作模式--协程
+# worker_class = "gevent"
+
+worker_class = "uvicorn.workers.UvicornWorker"
+# 最大客户客户端并发数量,对使用线程和协程的worker的工作有影响
+# 服务器配置设置的值  1200:中小型项目  上万并发: 中大型
+# 服务器硬件:宽带+数据库+内存
+# 服务器的架构:集群 主从
+worker_connections = 120000
+
+
+timeout = 300