3v324v23's picture
chore: 彻底清理项目,符合 Hugging Face 部署规范
ae4ceef
import { Router } from 'express';
import { verifyToken } from './auth.js';
import { addJob, getQueueStatus } from '../lib/queue.js';
const router = Router();
/**
* 压力测试接口:模拟大规模高并发请求进入队列
*/
router.post('/stress-test', verifyToken, async (req: any, res) => {
const { count = 10 } = req.body;
const startTime = Date.now();
const tasks = [];
for (let i = 0; i < count; i++) {
tasks.push(addJob('ai_workflow', {
workflowId: `stress-test-${i}`,
workflow: { id: `w-${i}`, name: `Stress Test Workflow`, nodes: [], edges: [] },
input: `Mock Input ${i}`
}));
}
try {
await Promise.all(tasks);
const duration = Date.now() - startTime;
const status = await getQueueStatus();
res.json({
success: true,
count,
duration: `${duration}ms`,
avgTime: `${duration / count}ms`,
status
});
} catch (err: any) {
res.status(500).json({ success: false, error: err.message });
}
});
/**
* 获取队列当前详细状态
*/
router.get('/queue-status', async (_req, res) => {
const status = await getQueueStatus();
res.json(status);
});
/**
* 获取系统健康指标
*/
router.get('/health-details', (req, res) => {
res.json({
status: 'ok',
engine: 'Qwen2.5-7B',
provider: 'SiliconFlow',
timestamp: new Date().toISOString()
});
});
export default router;