[功能] 添加支持多个上游地址,优化代理路由配置和负载均衡逻辑

This commit is contained in:
ryan
2026-03-18 22:24:05 +08:00
parent c844f4c784
commit 1fbe156a7c
13 changed files with 287 additions and 39 deletions
@@ -46,6 +46,7 @@ func TestPhase1PublishLifecycle(t *testing.T) {
createBody := map[string]any{
"domain": "app.example.com",
"origin_url": "https://origin-a.internal",
"upstreams": []string{"https://origin-a-backup.internal"},
"origin_host": "origin-a.internal",
"enabled": true,
"cache_enabled": true,
@@ -65,6 +66,9 @@ func TestPhase1PublishLifecycle(t *testing.T) {
if !createdRoute.CacheEnabled || createdRoute.CachePolicy != "path_prefix" {
t.Fatalf("expected route cache settings to persist, got %+v", createdRoute)
}
if !strings.Contains(createdRoute.Upstreams, "origin-a-backup.internal") {
t.Fatalf("expected route upstream list to persist, got %s", createdRoute.Upstreams)
}
if !strings.Contains(createdRoute.CacheRules, "/assets") {
t.Fatalf("expected route cache rules to persist, got %s", createdRoute.CacheRules)
}
@@ -114,6 +118,7 @@ func TestPhase1PublishLifecycle(t *testing.T) {
updateBody := map[string]any{
"domain": "app.example.com",
"origin_url": "https://origin-b.internal",
"upstreams": []string{"https://origin-b-backup.internal"},
"origin_host": "origin-b.internal",
"enabled": true,
"cache_enabled": true,
@@ -133,6 +138,9 @@ func TestPhase1PublishLifecycle(t *testing.T) {
if createdRoute.CachePolicy != "path_exact" || !strings.Contains(createdRoute.CacheRules, "/robots.txt") {
t.Fatalf("expected updated route cache rules to persist, got %+v", createdRoute)
}
if !strings.Contains(createdRoute.Upstreams, "origin-b-backup.internal") {
t.Fatalf("expected updated route upstream list to persist, got %s", createdRoute.Upstreams)
}
resp = performJSONRequest(t, engine, token, http.MethodPost, "/api/config-versions/publish", nil)
var version2 model.ConfigVersion