MCPcopy
hub / github.com/polarismesh/polaris

github.com/polarismesh/polaris @v1.18.1 sqlite

repository ↗ · DeepWiki ↗ · release v1.18.1 ↗
8,255 symbols 33,240 edges 687 files 5,284 documented · 64%
README

北极星:服务发现和治理

Build Status codecov.io Go Report Card Docker Pulls Contributors License GitHub release (latest by date)

English | 简体中文

README:

更多文档请查看北极星官网

介绍

北极星是一个支持多语言和多框架的服务发现和治理平台,致力于解决分布式和微服务架构中的服务管理、流量管理、故障容错、配置管理和可观测性问题,针对不同的技术栈和环境提供服务治理的标准方案和最佳实践。

功能

  • 服务管理:服务注册、服务发现、健康检查
  • 流量控制:可自定义的流量路由、负载均衡、限频限流、访问控制
  • 故障容错:服务和接口熔断和降级、实例熔断和切换
  • 配置管理:版本管理、灰度发布、动态更新

亮点

  • 一站式服务治理平台,覆盖注册中心、服务网格和配置中心的能力
  • 提供 SDK、开发框架、Java agent 和 sidecar 等多种模式的数据面
  • 支持常用的开发框架,例如:Spring Cloud、Dubbo 和 gRPC 等
  • 支持 K8s 服务注册和 sidecar 自动注入,实现 Proxy 服务网格

如何安装

更多文档请查看安装指南

如何开发服务

北极星提供 SDK、开发框架、Java agent 和 sidecar 等多种模式的数据面。用户可以根据业务需求使用一种或者多种模式的数据面。

使用北极星多语言 SDK,直接调用北极星客户端 API:

使用集成北极星 Java SDK 的 HTTP 和 RPC 框架:

使用集成北极星 Go SDK 的 HTTP or RPC 框架:

使用 K8s 服务注册和 sidecar 自动注入:

如何集成服务网关

用户可以在多种服务网关里集成北极星的服务发现和治理能力。

交流群

扫码二维码,加入北极星开源交流群。欢迎用户反馈使用问题和优化建议。

Extension points exported contracts — how you extend this code

Plugin (Interface)
Plugin 通用插件接口 [22 implementers]
plugin/plugin.go
GroupOperator (Interface)
GroupOperator 用户组相关操作 [7 implementers]
auth/api.go
NamespaceStore (Interface)
NamespaceStore Namespace storage interface [6 implementers]
store/api.go
Handler (Interface)
Handler event handler [13 implementers]
common/eventhub/subscription.go
Apiserver (Interface)
Apiserver API服务器接口 [7 implementers]
apiserver/apiserver.go
XDSBuilder (Interface)
XDSBuilder . [5 implementers]
apiserver/xdsserverv3/resource/api.go
RateLimitOperateServer (Interface)
RateLimitOperateServer Lamflow rule related operation [4 implementers]
service/api_v1.go
UserStore (Interface)
UserStore User-related operation interface [4 implementers]
store/auth_api.go

Core symbols most depended-on inside this repo

NewStringValue
called by 1246
common/utils/ptypes.go
Errorf
called by 908
common/log/scope.go
Error
called by 875
store/status.go
Run
called by 725
apiserver/apiserver.go
Equal
called by 670
common/model/naming.go
Fatalf
called by 570
common/log/scope.go
Fatal
called by 558
common/log/scope.go
DiscoverServer
called by 526
test/suit/test_suit.go

Shape

Method 5,073
Function 2,200
Struct 732
Interface 127
TypeAlias 66
FuncType 57

Languages

Go100%

Modules by API surface

cache/mock/cache_mock.go428 symbols
store/mock/api_mock.go416 symbols
common/api/l5/cl5.pb.go269 symbols
cache/api/types.go149 symbols
auth/mock/api_mock.go130 symbols
store/discover_api.go105 symbols
service/api_v1.go92 symbols
common/model/naming.go81 symbols
apiserver/httpserver/discover/v1/console_access.go64 symbols
service/common_test.go59 symbols
apiserver/nacosserver/v2/pb/nacos_grpc_service.pb.go56 symbols
service/instance.go54 symbols

Dependencies from manifests, versioned

github.com/ArthurHlt/go-eureka-clientv1.1.0 · 1×
github.com/beorn7/perksv1.0.1 · 1×
github.com/census-instrumentation/opencensus-protov0.4.1 · 1×
github.com/cespare/xxhash/v2v2.2.0 · 1×
github.com/client9/misspellv0.3.4 · 1×
github.com/cncf/xds/gov0.0.0-2023060703533 · 1×
github.com/dgryski/go-rendezvousv0.0.0-2020082301473 · 1×
github.com/dlclark/regexp2v1.10.0 · 1×

Datastores touched

(mysql)Database · 1 repos

For agents

$ claude mcp add polaris \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact