跳到主要内容

高并发场景调优

本文档提供高并发场景下的最佳实践。

连接池

复用 HTTP 连接,减少建立连接的开销:

import httpx
from openai import OpenAI

client = OpenAI(
api_key="sk-real200-xxx",
base_url="https://real200.com/v1",
http_client=httpx.Client(limits=httpx.Limits(max_connections=100))
)

并发控制

建议使用信号量控制并发数:

import asyncio
from openai import AsyncOpenAI

client = AsyncOpenAI(api_key="sk-real200-xxx", base_url="https://real200.com/v1")
semaphore = asyncio.Semaphore(20) # 最大并发 20

async def call_api(prompt):
async with semaphore:
return await client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": prompt}]
)

限流处理

高并发时更容易触发限流(429 错误)。建议:

  • 实现指数退避重试
  • 分散请求到不同时间段
  • 联系管理员提高限流阈值