[eat] 支持自定义启动服务的进程、线程数

This commit is contained in:
Wizerd
2023-12-29 09:11:03 +08:00
parent bbbf32fde2
commit 595bfbe0e6
4 changed files with 26 additions and 12 deletions

View File

@@ -9,13 +9,11 @@ COPY . /app
# 设置环境变量
ENV PYTHONUNBUFFERED=1
# 设置工作进程数
ENV PROCESS_WORKERS=1
# 设置工作线程数
ENV PROCESS_THREADS=2
RUN chmod +x /app/start.sh
RUN apt update && apt install -y jq
# 设置 pip 源为清华大学镜像
RUN pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

View File

@@ -1,6 +1,8 @@
{
"log_level": "DEBUG",
"need_log_to_file": "true",
"process_workers": 2,
"process_threads": 2,
"pandora_base_url": "",
"pandora_api_prefix": "",
"backend_container_url": "",

View File

@@ -173,9 +173,9 @@ CORS(app, resources={r"/images/*": {"origins": "*"}})
PANDORA_UPLOAD_URL = 'files.pandoranext.com'
VERSION = '0.3.6'
VERSION = '0.3.7'
# VERSION = 'test'
UPDATE_INFO = '增加特殊情况下的错误日志输出'
UPDATE_INFO = '支持自定义启动服务的进程、线程数'
# UPDATE_INFO = '【仅供临时测试使用】 '
with app.app_context():

View File

@@ -3,18 +3,32 @@
# 记录当前日期和时间
NOW=$(date +"%Y-%m-%d-%H-%M")
# 尝试从环境变量获取参数,如果不存在,则从 config.json 文件中读取
# 如果这些值仍然不存在,将它们设置为默认值
# 如未设置,填充默认值
if [ -z "$PROCESS_WORKERS" ]; then
export PROCESS_WORKERS=1
PROCESS_WORKERS=$(jq -r '.process_workers // empty' /app/data/config.json)
export PROCESS_WORKERS
if [ -z "$PROCESS_WORKERS" ]; then
PROCESS_WORKERS=1
fi
fi
if [ -z "$PROCESS_THREADS" ]; then
export PROCESS_THREADS=2
PROCESS_THREADS=$(jq -r '.process_threads // empty' /app/data/config.json)
export PROCESS_THREADS
if [ -z "$PROCESS_THREADS" ]; then
PROCESS_THREADS=2
fi
fi
export PROCESS_WORKERS
export PROCESS_THREADS
echo "PROCESS_WORKERS: ${PROCESS_WORKERS}"
echo "PROCESS_THREADS: ${PROCESS_THREADS}"
# 启动 Gunicorn 并使用 tee 命令同时输出日志到文件和控制台
exec gunicorn -w ${PROCESS_WORKERS} --threads ${PROCESS_THREADS} --bind 0.0.0.0:33333 main:app --access-logfile - --error-logfile -
# python3 ./main.py