Announcement

👇Official Account👇

Welcome to join the group & private message

Article first/tail QR code

Skip to content

Lesson 4.3: 服务发现与注册

学习目标

  • 理解服务发现的核心机制

1. 服务发现模式

模式代表说明
客户端发现Consul客户端从注册中心获取地址
服务端发现K8s Service通过负载均衡器访问
DNS 发现CoreDNSDNS SRV 记录

Consul 示例

go
// 服务注册
import "github.com/hashicorp/consul/api"

client, _ := api.NewClient(api.DefaultConfig())
client.Agent().ServiceRegister(&api.AgentServiceRegistration{
    ID:   "user-service-1",
    Name: "user-service",
    Port: 8080,
    Check: &api.AgentServiceCheck{
        HTTP:     "http://localhost:8080/health",
        Interval: "10s",
    },
})

// 服务发现
services, _ := client.Agent().Services()
for _, svc := range services {
    fmt.Printf("Found: %s at %s:%d\n", svc.Service, svc.Address, svc.Port)
}

上次更新于: