外观
自定义负载均衡器配置指南 ⚖️
什么是自定义负载均衡? 🤔
想象负载均衡器就像一个智能交通指挥官:
- 🚦 指挥多条道路的车流(多个服务节点)
- 🔄 分散车流量(平衡服务负载)
- 🚫 封锁故障道路(屏蔽故障节点)
- 🔍 实时监控路况(健康检查)
使用场景 🎯
特别适用于以下情况:
- 🏢 服务未接入Nacos注册中心
- 🌐 跨区域部署的服务调用
- 🔌 特殊网络环境下的服务
- 🛡️ 需要自动故障转移的场景
配置详解 ⚙️
1. 基础参数
参数名 | 说明 | 默认值 | 示例 |
---|---|---|---|
enabled | 是否启用 | false | true |
connection-timeout | 连接超时时间(毫秒) | 5000 | 5000 |
check-interval | 健康检查间隔(毫秒) | 30000 | 30000 |
2. 服务配置
参数名 | 说明 | 必填 | 示例 |
---|---|---|---|
services[].id | 服务标识 | 是 | web-feign |
services[].uris | 服务地址列表 | 是 | ["127.0.0.1:8082"] |
配置示例 💡
1. 最小配置
yaml
wueasy:
loadbalancer:
enabled: true # 启用负载均衡
services:
- id: web-service # 服务标识
uris: # 服务节点列表
- 127.0.0.1:8082
2. 完整配置
yaml
wueasy:
loadbalancer:
enabled: true # 启用负载均衡
connection-timeout: 5000 # 连接超时5秒
check-interval: 30000 # 检查间隔30秒
services:
- id: web-feign # 服务A
uris:
- 127.0.0.1:8082 # 服务A节点1
- 127.0.0.1:8083 # 服务A节点2
- id: api-service # 服务B
uris:
- 192.168.1.100:8080 # 服务B节点1
- 192.168.1.101:8080 # 服务B节点2
最佳实践 💫
1. 生产环境配置
yaml
wueasy:
loadbalancer:
connection-timeout: 3000 # 较短的超时时间
check-interval: 15000 # 更频繁的健康检查
services:
- id: prod-service
uris:
- 10.0.1.100:8080 # 主节点
- 10.0.1.101:8080 # 备用节点
2. 跨区域配置
yaml
wueasy:
loadbalancer:
services:
- id: global-service
uris:
- sz.example.com:8080 # 深圳节点
- sh.example.com:8080 # 上海节点
运行机制 🔄
健康检查
- ⏱️ 定期检查服务可用性
- 🔄 自动剔除不健康节点
- ✅ 恢复后自动加回
负载分配
- ⚖️ 均衡分配请求
- 🔀 智能故障转移
- 📊 动态调整权重
常见问题 ❓
1. 服务访问失败?
检查以下几点:
- ✓ 服务地址是否正确
- ✓ 网络是否连通
- ✓ 超时时间是否合理
2. 负载不均衡?
解决方案:
- ✓ 检查健康检查配置
- ✓ 验证服务节点状态
- ✓ 调整检查间隔
需要帮助?🆘
如果遇到问题:
- 检查配置参数
- 查看服务日志
- 测试节点连通性
- 联系技术支持