目录
目录README.md

Polaris Go 快速入门示例

这个项目演示了如何使用 Polaris Go SDK 实现服务注册与发现。项目包含三个主要部分:

  1. Polaris 服务注册中心(使用 Docker 部署)
  2. 服务提供者(Provider)
  3. 服务消费者(Consumer)

前提条件

  • Go 1.20 或更高版本
  • Docker 和 Docker Compose
  • Windows 操作系统(如果使用其他操作系统,需要修改启动脚本)

项目结构

.
├── consumer/                # 服务消费者代码
│   ├── main.go              # 消费者主程序
│   ├── go.mod               # Go 模块文件
│   └── polaris.yaml         # Polaris 配置文件
├── provider/                # 服务提供者代码
│   ├── main.go              # 提供者主程序
│   ├── go.mod               # Go 模块文件
│   └── polaris.yaml         # Polaris 配置文件
├── docker-compose.yml       # Docker Compose 配置文件
├── start.bat                # 启动脚本
└── README.md                # 项目说明文件

快速开始

1. 启动所有服务

运行启动脚本:

start.bat

这个脚本会:

  • 启动 Polaris 服务注册中心
  • 编译并启动服务提供者
  • 编译并启动服务消费者

2. 测试服务

服务启动后,可以通过以下方式测试:

curl http://localhost:8001/echo

这个请求会发送到消费者,消费者会从 Polaris 获取提供者的地址,然后转发请求到提供者,最后返回提供者的响应。

3. 访问 Polaris 控制台

Polaris 控制台可以通过以下地址访问:

http://localhost:8093

在控制台中,你可以查看服务注册情况、服务调用情况等信息。

4. 停止所有服务

在启动脚本的命令行窗口中按任意键,脚本会停止所有服务。

配置说明

Provider 配置

Provider 会注册自己到 Polaris 注册中心,并提供一个简单的 HTTP 服务,响应 “/echo” 路径的请求。

主要参数:

  • --namespace: 服务命名空间,默认为 “default”
  • --service: 服务名称,默认为 “DiscoverEchoServer”
  • --token: 服务令牌,默认为 “token”
  • --port: 服务监听端口,默认为 8000

Consumer 配置

Consumer 会从 Polaris 注册中心获取服务实例,并向服务提供者发送请求。

主要参数:

  • --namespace: 要访问的服务命名空间,默认为 “default”
  • --service: 要访问的服务名称,默认为 “DiscoverEchoServer”
  • --port: 服务监听端口,默认为 8001

进阶使用

服务治理

Polaris 提供了丰富的服务治理功能,包括:

  • 负载均衡
  • 熔断降级
  • 限流
  • 路由规则

你可以通过修改 polaris.yaml 配置文件来启用和配置这些功能。

多实例部署

你可以启动多个 Provider 实例,Polaris 会自动进行负载均衡:

cd provider
go run main.go --port=8002

自定义路由规则

你可以在 Polaris 控制台中配置路由规则,实现灰度发布、A/B 测试等功能。

关于
22.7 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号