proxy-pool/examples/config/05-public-extract-api-key.yaml
2026-07-30 14:15:48 +08:00

40 lines
1.4 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 公网提取 API 使用 X-API-Key成功后代理立即 EXTRACTED。
version: 1
security: {requireProtectionOnPublicListen: true}
distribution:
enabled: true
listen: 0.0.0.0:8081
auth:
mode: apiKey
header: X-API-Key
token: "${DISTRIBUTION_API_KEY}"
clientIdentification: {mode: authenticatedClient}
limits: {requestsPerMinute: 6000, requestsPerMinutePerClient: 300}
extraction:
fulfillment: partial
maxCountPerRequest: 100
minRemainingTTL: 45s
maxHealthCheckAge: 10s
reserveForGateway: 0
routing:
- name: public-extract
enabled: true
purpose: extract
match: {hostRegex: '.*'}
upstreams: [provider-a]
strategy: {type: random}
onUnavailable: {action: reject}
upstreams:
provider-a:
enabled: true
exposure: [extract]
provider: {billingMode: fetch, protocols: [http]}
api: {url: https://provider-a.example/proxies, method: GET, auth: {type: none}, template: '{{.}}'}
proxyAuth: {type: response}
pool: {maxSize: 1000}
capacity: {maxConcurrencyPerProxy: 1}
refill: {reconcileInterval: 1s, minimumAvailableSlots: 25, targetAvailableSlots: 50}
lifecycle: {ttl: 3m, allocationSafetyMargin: 30s}
fetch: {estimatedIPsPerCall: 10, requestInterval: 1s, timeout: 3s, maxAttempts: 3, maxInFlight: 1, maxTotal: 100000}
check: {interval: 15s, jitter: 20, maxInFlight: 200, timeout: 2s, maxAttempts: 2, maxConsecutiveFailures: 3}