连接参数示例
连接参数示例
# MongoDB 连接串参数
# mongodb://app:pwd@m1:27017,m2:27017/app?replicaSet=rs0\
# &maxPoolSize=50&minPoolSize=5&waitQueueTimeoutMS=5000&serverSelectionTimeoutMS=3000
# Elasticsearch Python 客户端
from elasticsearch import Elasticsearch
es = Elasticsearch("http://es:9200", request_timeout=10, max_retries=3, retry_on_timeout=True)
# Redis 客户端
import redis
r = redis.Redis(host="127.0.0.1", port=6379, socket_timeout=1, socket_connect_timeout=0.5)| 池容量核算 | 服务实例数 × 每实例池上限 = 数据库侧连接总量,要低于服务端 maxConnections |
|---|---|
| 排队 | 池满后的请求在队列等待(waitQueueTimeoutMS),超时立刻失败好过无限堆积 |
| 重试 | 只对幂等且瞬时错误重试,指数退避加抖动,避免故障时放大流量 |
客户端按进程复用同一实例:每个请求新建客户端会反复建连,既慢又可能耗尽连接与文件描述符。