Files
qihuo/ecosystem.config.cjs
T
dekun 9cd81a3ea7 Isolate CTP in worker process and improve strategy roll UX.
Split vn.py into qihuo-ctp worker with IPC client bridge, keep CTP connected during breaks with cached account fallback, speed up strategy page loads, and allow off-session breakout roll submissions.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 12:37:44 +08:00

63 lines
1.7 KiB
JavaScript

const path = require("path");
const fs = require("fs");
const ROOT = __dirname;
const venvCandidates = [
path.join(ROOT, "venv", "bin", "python"),
path.join(ROOT, "venv", "Scripts", "python.exe"),
];
const interpreter = venvCandidates.find((p) => fs.existsSync(p)) || "python3";
module.exports = {
apps: [
{
name: "qihuo",
script: "app.py",
cwd: ROOT,
interpreter,
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: "8192M",
env: {
NODE_ENV: "production",
LANG: "zh_CN.UTF-8",
LC_ALL: "zh_CN.UTF-8",
LC_CTYPE: "zh_CN.UTF-8",
QIHUO_CTP_ROLE: "client",
QIHUO_CTP_WORKER_URL: "http://127.0.0.1:6601",
QIHUO_CTP_WORKER_TOKEN: "qihuo-local-ctp",
QIHUO_STARTUP_WORKERS: "8",
QIHUO_MEMORY_MB: "8192",
},
error_file: path.join(ROOT, "logs", "pm2-error.log"),
out_file: path.join(ROOT, "logs", "pm2-out.log"),
time: true,
},
{
name: "qihuo-ctp",
script: "ctp_worker.py",
cwd: ROOT,
interpreter,
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: "8192M",
env: {
NODE_ENV: "production",
LANG: "zh_CN.UTF-8",
LC_ALL: "zh_CN.UTF-8",
LC_CTYPE: "zh_CN.UTF-8",
QIHUO_CTP_ROLE: "worker",
QIHUO_CTP_WORKER_HOST: "127.0.0.1",
QIHUO_CTP_WORKER_PORT: "6601",
QIHUO_CTP_WORKER_TOKEN: "qihuo-local-ctp",
QIHUO_MEMORY_MB: "8192",
},
error_file: path.join(ROOT, "logs", "pm2-ctp-error.log"),
out_file: path.join(ROOT, "logs", "pm2-ctp-out.log"),
time: true,
},
],
};