支持并发agent

This commit is contained in:
Sirius
2026-08-12 15:54:03 +08:00
parent 8affbf4bed
commit 3e7a4c9540
8 changed files with 126 additions and 41 deletions
+7 -2
View File
@@ -33,7 +33,7 @@ import {
export interface BridgeServer {
app: FastifyInstance;
installation: InstallationStatus;
abortActive: () => boolean;
abortActive: () => number;
}
export async function createServer(config: BridgeConfig): Promise<BridgeServer> {
@@ -43,7 +43,10 @@ export async function createServer(config: BridgeConfig): Promise<BridgeServer>
bodyLimit: config.max_request_bytes,
requestTimeout: 0,
});
const coordinator = new RequestCoordinator(config.max_queue_size);
const coordinator = new RequestCoordinator(
config.max_concurrent_requests,
config.max_queue_size,
);
app.addHook("onRequest", async (request, reply) => {
const requestedHeaders = request.headers["access-control-request-headers"];
@@ -90,6 +93,8 @@ export async function createServer(config: BridgeConfig): Promise<BridgeServer>
status: installation.installed && installation.authenticated ? "ok" : "degraded",
command_code: installation,
busy: coordinator.busy,
active_requests: coordinator.activeRequests,
max_concurrent_requests: config.max_concurrent_requests,
queue_length: coordinator.queueLength,
queue_capacity: config.max_queue_size,
}));