用户指南

按功能域组织。每个功能域统一结构:

功能域/
├── 功能域.go          ← 接口定义 + 用户 API
├── 内置实现/           ← 零依赖,导出 New() 构造函数
└── (plugins/第三方实现) ← 有第三方依赖,独立 go.mod

功能域清单

内置实现plugins 实现
registryregistry/memoryplugins/registry/etcd / nacos
configconfig/fileplugins/config/etcd,k8s
serverserver/httpplugins/server/grpc
clientclientplugins/client/grpc
loglog/slogplugins/log/zap / file_rotate
observability (metrics/trace/log)metrics/noop / trace/noop / log/slogplugins/metrics/prometheus / plugins/trace/otel
proxyproxy(HTTP/WS/SSE)plugins/proxy/grpc
encodingencoding/jsonplugins/encoding/protobuf
middlewarerecovery/timeout/clustering/requestid/accesslogplugins/middleware/tracing,metrics
circuitbreakercircuitbreaker/counter(按 cluster 隔离)
ratelimitratelimit/token(按 cluster 隔离)
retryretry/exponential(按 cluster 路由)
propagationpropagation(W3C Baggage 兼容)
cluster-routingrouting(X-Zeus-Cluster 端到端路由)
jobjob/interval(固定间隔)plugins/job/cron(cron 表达式)
mqmq/memory(进程内事件总线)plugins/mq/nats,kafka
databasedatabase/sql(薄封装 stdlib)plugins/database/mysql/postgres/sqlite
cachecache/memory(TTL 双路径清理)plugins/cache/redis

URL scheme 切换

各功能域支持 URL scheme 切换实现:

入口已注册 scheme
registryapp.resolveRegistrymemory / etcd / nacos
cachecache.NewFromURLmemory / redis
databasedatabase.NewFromURLmysql / postgres / sqlite
mqmq.NewBrokerFromURLmemory / nats / kafka
jobjob.NewSchedulerFromURLinterval / cron

注册机制:用户主程序 import _ "..." 副作用包即可激活对应 scheme(plugins 在 init() 中注册)。