Documentation
¶
Index ¶
- func NewApp(ctx *bootstrap.Context, optionValues ...Option) (*kratos.App, func(), error)
- type GRPCMiddlewareContributor
- type HTTPMiddlewareContributor
- type HealthContributor
- type Module
- type ModuleAdapter
- type Modules
- func (modules Modules) GRPCMiddlewares() []kratosMiddleware.Middleware
- func (modules Modules) HTTPMiddlewares() []kratosMiddleware.Middleware
- func (modules Modules) HealthChecks() []health.Check
- func (modules Modules) OpenAPIDocuments() []openapi.Document
- func (modules Modules) QueueConsumers() []coreQueue.Consumer
- func (modules Modules) RegisterGRPC(server grpc.ServiceRegistrar)
- func (modules Modules) RegisterHTTP(server *kratosHTTP.Server)
- func (modules Modules) RegisterMCP(server *mcpserver.Server)
- func (modules Modules) SSEStreams() []coreSSE.Stream
- func (modules Modules) Scripts() []script.Script
- func (modules Modules) Servers() []kratosTransport.Server
- func (modules Modules) StartupHooks() []startup.Hook
- func (modules Modules) StaticMounts() []coreStatic.Mount
- func (modules Modules) Tasks() []task.Task
- type OpenAPIContributor
- type Option
- func WithGRPCMiddlewares(middlewares ...kratosMiddleware.Middleware) Option
- func WithHTTPMiddlewares(middlewares ...kratosMiddleware.Middleware) Option
- func WithHealthChecks(checks ...health.Check) Option
- func WithModules(modules ...Module) Option
- func WithOpenAPIAuthorizer(authorizer func(*stdhttp.Request) bool) Option
- func WithOpenAPIDocuments(documents ...openapi.Document) Option
- func WithOpenAPIPaths(documentPath, swaggerPath string) Option
- func WithOpenAPIRegistry(registry *openapi.Registry) Option
- func WithQueue(queue kitQueue.Queue) Option
- func WithQueueConsumers(consumers ...coreQueue.Consumer) Option
- func WithSSERegistry(registry *coreSSE.Registry) Option
- func WithSSEServer(server *sseServer.Server) Option
- func WithSSEStreams(streams ...coreSSE.Stream) Option
- func WithScripts(scripts ...script.Script) Option
- func WithServers(servers ...kratosTransport.Server) Option
- func WithStartupHooks(hooks ...startup.Hook) Option
- func WithStaticMounts(mounts ...coreStatic.Mount) Option
- func WithTaskObserver(observer task.Observer) Option
- func WithTaskRegistry(registry *task.Registry) Option
- func WithTasks(tasks ...task.Task) Option
- type QueueConsumerContributor
- type SSEContributor
- type ScriptContributor
- type ServerContributor
- type StartupContributor
- type StaticContributor
- type TaskContributor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type GRPCMiddlewareContributor ¶
type GRPCMiddlewareContributor interface {
GRPCMiddlewares() []kratosMiddleware.Middleware
}
GRPCMiddlewareContributor 表示可贡献 gRPC 服务端中间件的模块。
type HTTPMiddlewareContributor ¶
type HTTPMiddlewareContributor interface {
HTTPMiddlewares() []kratosMiddleware.Middleware
}
HTTPMiddlewareContributor 表示可贡献 HTTP 服务端中间件的模块。
type HealthContributor ¶
HealthContributor 表示可贡献外部依赖就绪检查的模块。
type Module ¶
type Module interface {
RegisterGRPC(grpc.ServiceRegistrar)
RegisterHTTP(*kratosHTTP.Server)
RegisterMCP(*mcpserver.Server)
}
Module 表示可挂载到核心服务宿主的外部服务模块。
type ModuleAdapter ¶
type ModuleAdapter struct{}
ModuleAdapter 为不需要全部传输协议的外部模块提供空注册实现。
func (ModuleAdapter) RegisterGRPC ¶
func (ModuleAdapter) RegisterGRPC(grpc.ServiceRegistrar)
RegisterGRPC 保持 gRPC 注册为空。
func (ModuleAdapter) RegisterHTTP ¶
func (ModuleAdapter) RegisterHTTP(*kratosHTTP.Server)
RegisterHTTP 保持 HTTP 注册为空。
func (ModuleAdapter) RegisterMCP ¶
func (ModuleAdapter) RegisterMCP(*mcpserver.Server)
RegisterMCP 保持 MCP 注册为空。
type Modules ¶
type Modules []Module
Modules 表示当前进程启用的外部服务模块集合。
func (Modules) GRPCMiddlewares ¶
func (modules Modules) GRPCMiddlewares() []kratosMiddleware.Middleware
GRPCMiddlewares 汇总全部外部模块贡献的 gRPC 中间件。
func (Modules) HTTPMiddlewares ¶
func (modules Modules) HTTPMiddlewares() []kratosMiddleware.Middleware
HTTPMiddlewares 汇总全部外部模块贡献的 HTTP 中间件。
func (Modules) HealthChecks ¶
HealthChecks 汇总全部外部模块贡献的就绪检查。
func (Modules) OpenAPIDocuments ¶
OpenAPIDocuments 汇总全部外部模块贡献的 OpenAPI 文档。
func (Modules) QueueConsumers ¶
QueueConsumers 汇总全部外部模块贡献的队列消费者。
func (Modules) RegisterGRPC ¶
func (modules Modules) RegisterGRPC(server grpc.ServiceRegistrar)
RegisterGRPC 将全部外部模块注册到 gRPC 服务。
func (Modules) RegisterHTTP ¶
func (modules Modules) RegisterHTTP(server *kratosHTTP.Server)
RegisterHTTP 将全部外部模块注册到 HTTP 服务。
func (Modules) RegisterMCP ¶
RegisterMCP 将全部外部模块注册到 MCP 服务。
func (Modules) SSEStreams ¶
SSEStreams 汇总全部外部模块贡献的 SSE 流。
func (Modules) Servers ¶
func (modules Modules) Servers() []kratosTransport.Server
Servers 汇总全部外部模块贡献的后台服务。
func (Modules) StartupHooks ¶
StartupHooks 汇总全部外部模块贡献的服务启动和清理钩子。
func (Modules) StaticMounts ¶
func (modules Modules) StaticMounts() []coreStatic.Mount
StaticMounts 汇总全部外部模块贡献的静态资源挂载。
type OpenAPIContributor ¶
type OpenAPIContributor interface {
// OpenAPIDocuments 返回模块拥有的独立 OpenAPI 文档。
OpenAPIDocuments() []openapi.Document
}
OpenAPIContributor 表示可贡献具名 OpenAPI 文档的模块。
type Option ¶
type Option func(*options)
Option 表示核心服务宿主的装配选项。
func WithGRPCMiddlewares ¶
func WithGRPCMiddlewares(middlewares ...kratosMiddleware.Middleware) Option
WithGRPCMiddlewares 追加 gRPC 服务端中间件。
func WithHTTPMiddlewares ¶
func WithHTTPMiddlewares(middlewares ...kratosMiddleware.Middleware) Option
WithHTTPMiddlewares 追加 HTTP 服务端中间件。
func WithHealthChecks ¶
WithHealthChecks 追加由组合根直接提供的就绪检查。
func WithOpenAPIAuthorizer ¶
WithOpenAPIAuthorizer 设置 OpenAPI 文档访问校验函数。
func WithOpenAPIDocuments ¶
WithOpenAPIDocuments 追加由组合根直接提供的 OpenAPI 文档。
func WithOpenAPIPaths ¶
WithOpenAPIPaths 配置原始文档和 Swagger UI 的路由前缀。
func WithOpenAPIRegistry ¶
WithOpenAPIRegistry 使用调用方创建的 OpenAPI 注册表。
func WithQueueConsumers ¶
WithQueueConsumers 追加由组合根直接提供的队列消费者。
func WithSSERegistry ¶
WithSSERegistry 使用调用方创建的 SSE 流注册表。
func WithSSEServer ¶
WithSSEServer 注入需要挂载或独立启动的 SSE 服务。
func WithSSEStreams ¶
WithSSEStreams 追加由组合根直接提供的 SSE 流定义。
func WithServers ¶
func WithServers(servers ...kratosTransport.Server) Option
WithServers 追加定时任务、消费者等 Kratos 后台服务。
func WithStartupHooks ¶
WithStartupHooks 追加由组合根直接提供的服务启动和清理钩子。
func WithStaticMounts ¶
func WithStaticMounts(mounts ...coreStatic.Mount) Option
WithStaticMounts 追加由组合根直接提供的静态资源挂载。
func WithTaskObserver ¶
WithTaskObserver 设置任务执行结果观察器。
func WithTaskRegistry ¶
WithTaskRegistry 使用调用方创建的任务注册表,便于动态任务适配器共享。
type QueueConsumerContributor ¶
type QueueConsumerContributor interface {
// QueueConsumers 返回模块提供的队列消费者。
QueueConsumers() []coreQueue.Consumer
}
QueueConsumerContributor 表示可贡献队列消费者的模块。
type SSEContributor ¶
SSEContributor 表示可贡献 SSE 流的模块。
type ScriptContributor ¶
ScriptContributor 表示可贡献启动脚本或数据库迁移适配器的模块。
type ServerContributor ¶
type ServerContributor interface {
// Servers 返回需要纳入 Kratos 生命周期的后台服务。
Servers() []kratosTransport.Server
}
ServerContributor 表示可贡献定时任务、消费者等后台服务的模块。
type StartupContributor ¶
type StartupContributor interface {
// StartupHooks 返回模块提供的服务启动和清理钩子。
StartupHooks() []startup.Hook
}
StartupContributor 表示可贡献服务启动和清理钩子的模块。
type StaticContributor ¶
type StaticContributor interface {
// StaticMounts 返回模块提供的静态资源挂载。
StaticMounts() []coreStatic.Mount
}
StaticContributor 表示可贡献静态资源或单页应用挂载的模块。
type TaskContributor ¶
TaskContributor 表示可贡献具名任务的模块。
Directories
¶
| Path | Synopsis |
|---|---|
|
pkg
|
|
|
errorsx
Package errorsx 提供稳定的 Kratos 结构化错误构造能力。
|
Package errorsx 提供稳定的 Kratos 结构化错误构造能力。 |
|
event
Package event 提供类型安全的进程内发布订阅能力。
|
Package event 提供类型安全的进程内发布订阅能力。 |
|
health
Package health 提供存活检查和可扩展就绪检查。
|
Package health 提供存活检查和可扩展就绪检查。 |
|
localgrpc
Package localgrpc 提供与生成 gRPC 客户端兼容的进程内调用连接。
|
Package localgrpc 提供与生成 gRPC 客户端兼容的进程内调用连接。 |
|
openapi
Package openapi 管理当前进程启用的 OpenAPI 文档。
|
Package openapi 管理当前进程启用的 OpenAPI 文档。 |
|
queue
Package queue 提供队列生命周期、结构化消息发布和解码能力。
|
Package queue 提供队列生命周期、结构化消息发布和解码能力。 |
|
script
Package script 管理服务启动前执行的具名基础设施脚本。
|
Package script 管理服务启动前执行的具名基础设施脚本。 |
|
sse
Package sse 提供模块无关的 SSE 流注册与 JSON 发布能力。
|
Package sse 提供模块无关的 SSE 流注册与 JSON 发布能力。 |
|
startup
Package startup 管理服务启动前的初始化钩子及其清理工作。
|
Package startup 管理服务启动前的初始化钩子及其清理工作。 |
|
static
Package static 提供模块无关的静态资源与单页应用挂载能力。
|
Package static 提供模块无关的静态资源与单页应用挂载能力。 |
|
task
Package task 提供模块无关的任务注册、执行和 Cron 调度能力。
|
Package task 提供模块无关的任务注册、执行和 Cron 调度能力。 |