feat(docker,cache,proxy): improve container runtime defaults and add configurable connection limits
This commit is contained in:
@@ -96,5 +96,27 @@ export function getOciContainerConfig(): IDcRouterOptions {
|
||||
};
|
||||
}
|
||||
|
||||
// Connection capacity config
|
||||
const maxConnections = process.env.DCROUTER_MAX_CONNECTIONS;
|
||||
const maxConnectionsPerIP = process.env.DCROUTER_MAX_CONNECTIONS_PER_IP;
|
||||
const connectionRateLimit = process.env.DCROUTER_CONNECTION_RATE_LIMIT;
|
||||
if (maxConnections || maxConnectionsPerIP || connectionRateLimit) {
|
||||
options.smartProxyConfig = {
|
||||
...options.smartProxyConfig,
|
||||
routes: options.smartProxyConfig?.routes || [],
|
||||
...(maxConnectionsPerIP ? { maxConnectionsPerIP: parseInt(maxConnectionsPerIP, 10) } : {}),
|
||||
...(connectionRateLimit ? { connectionRateLimitPerMinute: parseInt(connectionRateLimit, 10) } : {}),
|
||||
...(maxConnections ? {
|
||||
defaults: {
|
||||
...options.smartProxyConfig?.defaults,
|
||||
security: {
|
||||
...options.smartProxyConfig?.defaults?.security,
|
||||
maxConnections: parseInt(maxConnections, 10),
|
||||
},
|
||||
},
|
||||
} : {}),
|
||||
};
|
||||
}
|
||||
|
||||
return options;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user