Documentation ¶
Overview ¶
Package framework Golaxy分布式服务开发框架。
Index ¶
- Variables
- func ReadChan[T any](cb *ComponentBehavior, ch <-chan T) runtime.AsyncRet
- type App
- func (app *App) GetStartupConf() *viper.Viper
- func (app *App) InitCB(cb generic.DelegateAction1[*App]) *App
- func (app *App) Run()
- func (app *App) Setup(name string, generic any) *App
- func (app *App) StartingCB(cb generic.DelegateAction1[*App]) *App
- func (app *App) TerminateCB(cb generic.DelegateAction1[*App]) *App
- type AwaitDirector
- func (ad AwaitDirector) All(fun generic.ActionVar1[[]runtime.Ret, any], va ...any)
- func (ad AwaitDirector) Any(fun generic.ActionVar1[runtime.Ret, any], va ...any)
- func (ad AwaitDirector) AnyOK(fun generic.ActionVar1[runtime.Ret, any], va ...any)
- func (ad AwaitDirector) Pipe(ctx context.Context, fun generic.ActionVar1[runtime.Ret, any], va ...any)
- type ComponentBehavior
- func (c *ComponentBehavior) Async(fun generic.FuncVar0[any, runtime.Ret], va ...any) runtime.AsyncRet
- func (c *ComponentBehavior) AsyncVoid(fun generic.ActionVar0[any], va ...any) runtime.AsyncRet
- func (c *ComponentBehavior) Await(asyncRet ...runtime.AsyncRet) AwaitDirector
- func (c *ComponentBehavior) BalanceOneWayRPC(service, comp, method string, args ...any) error
- func (c *ComponentBehavior) BalanceRPC(service, comp, method string, args ...any) runtime.AsyncRet
- func (c *ComponentBehavior) BroadcastOneWayRPC(service, comp, method string, args ...any) error
- func (c *ComponentBehavior) CliRPC(method string, args ...any) runtime.AsyncRet
- func (c *ComponentBehavior) CliRPCToEntity(entityId uid.Id, method string, args ...any) runtime.AsyncRet
- func (c *ComponentBehavior) GetRuntime() Runtime
- func (c *ComponentBehavior) GetService() Service
- func (c *ComponentBehavior) GlobalBalanceOneWayRPC(comp, method string, args ...any) error
- func (c *ComponentBehavior) GlobalBalanceRPC(comp, method string, args ...any) runtime.AsyncRet
- func (c *ComponentBehavior) GlobalBroadcastOneWayRPC(comp, method string, args ...any) error
- func (c *ComponentBehavior) Go(fun generic.FuncVar0[any, runtime.Ret], va ...any) runtime.AsyncRet
- func (c *ComponentBehavior) GoVoid(fun generic.ActionVar0[any], va ...any) runtime.AsyncRet
- func (c *ComponentBehavior) OneWayCliRPC(method string, args ...any) error
- func (c *ComponentBehavior) OneWayCliRPCToEntity(entityId uid.Id, method string, args ...any) error
- func (c *ComponentBehavior) OneWayRPC(service, comp, method string, args ...any) error
- func (c *ComponentBehavior) RPC(service, comp, method string, args ...any) runtime.AsyncRet
- func (c *ComponentBehavior) TimeAfter(dur time.Duration) runtime.AsyncRet
- func (c *ComponentBehavior) TimeAt(at time.Time) runtime.AsyncRet
- func (c *ComponentBehavior) TimeTick(dur time.Duration) runtime.AsyncRet
- type IRuntimeInstantiation
- type IServiceInstantiation
- type InstallRuntimeDistEntities
- type InstallRuntimeLogger
- type InstallServiceBroker
- type InstallServiceConfig
- type InstallServiceDistEntityQuerier
- type InstallServiceDistService
- type InstallServiceDistSync
- type InstallServiceLogger
- type InstallServiceRPC
- type InstallServiceRegistry
- type LifecycleRuntimeBirth
- type LifecycleRuntimeBuilt
- type LifecycleRuntimeFrameLoopBegin
- type LifecycleRuntimeFrameLoopEnd
- type LifecycleRuntimeFrameUpdateBegin
- type LifecycleRuntimeFrameUpdateEnd
- type LifecycleRuntimeRunCallBegin
- type LifecycleRuntimeRunCallEnd
- type LifecycleRuntimeRunGCBegin
- type LifecycleRuntimeRunGCEnd
- type LifecycleRuntimeStarted
- type LifecycleRuntimeStarting
- type LifecycleRuntimeTerminated
- type LifecycleRuntimeTerminating
- type LifecycleServiceBirth
- type LifecycleServiceBuilt
- type LifecycleServiceStarted
- type LifecycleServiceStarting
- type LifecycleServiceTerminated
- type LifecycleServiceTerminating
- type Runtime
- type RuntimeCreator
- func (c RuntimeCreator) AutoRun(auto bool) RuntimeCreator
- func (c RuntimeCreator) FPS(fps float32) RuntimeCreator
- func (c RuntimeCreator) Name(name string) RuntimeCreator
- func (c RuntimeCreator) PanicHandling(autoRecover bool, reportError chan error) RuntimeCreator
- func (c RuntimeCreator) ProcessQueueCapacity(cap int) RuntimeCreator
- func (c RuntimeCreator) Setup(generic any) RuntimeCreator
- func (c RuntimeCreator) Spawn() core.Runtime
- type RuntimeGeneric
- type RuntimeGenericT
- type RuntimeInstance
- type Service
- func (serv Service) CreateEntityPT() core.EntityPTCreator
- func (serv Service) CreateRuntime() RuntimeCreator
- func (serv Service) GetBroker() broker.IBroker
- func (serv Service) GetConf() conf.IConfig
- func (serv Service) GetDistEntityQuerier() dentq.IDistEntityQuerier
- func (serv Service) GetDistService() dserv.IDistService
- func (serv Service) GetDistSync() dsync.IDistSync
- func (serv Service) GetMemKVs() *sync.Map
- func (serv Service) GetRPC() rpc.IRPC
- func (serv Service) GetRegistry() discovery.IRegistry
- func (serv Service) GetStartupConf() *viper.Viper
- type ServiceGeneric
- type ServiceGenericT
- type ServiceInstance
- func (instance *ServiceInstance) CreateEntityPT() core.EntityPTCreator
- func (instance *ServiceInstance) CreateRuntime() RuntimeCreator
- func (instance *ServiceInstance) GetBroker() broker.IBroker
- func (instance *ServiceInstance) GetConf() conf.IConfig
- func (instance *ServiceInstance) GetDistEntityQuerier() dentq.IDistEntityQuerier
- func (instance *ServiceInstance) GetDistService() dserv.IDistService
- func (instance *ServiceInstance) GetDistSync() dsync.IDistSync
- func (instance *ServiceInstance) GetMemKVs() *sync.Map
- func (instance *ServiceInstance) GetRPC() rpc.IRPC
- func (instance *ServiceInstance) GetRegistry() discovery.IRegistry
- func (instance *ServiceInstance) GetStartupConf() *viper.Viper
- func (instance *ServiceInstance) GetStartupIdx() int
Constants ¶
This section is empty.
Variables ¶
var (
ErrComponentNotLiving = errors.New("async/await: component not living")
)
Functions ¶
Types ¶
type App ¶
type App struct {
// contains filtered or unexported fields
}
App 应用
func (*App) StartingCB ¶
func (app *App) StartingCB(cb generic.DelegateAction1[*App]) *App
StartingCB 启动回调
func (*App) TerminateCB ¶ added in v0.1.33
func (app *App) TerminateCB(cb generic.DelegateAction1[*App]) *App
TerminateCB 终止回调
type AwaitDirector ¶ added in v0.1.56
type AwaitDirector struct {
// contains filtered or unexported fields
}
AwaitDirector 异步等待分发器
func (AwaitDirector) All ¶ added in v0.1.56
func (ad AwaitDirector) All(fun generic.ActionVar1[[]runtime.Ret, any], va ...any)
All 异步等待所有结果返回
func (AwaitDirector) Any ¶ added in v0.1.56
func (ad AwaitDirector) Any(fun generic.ActionVar1[runtime.Ret, any], va ...any)
Any 异步等待任意一个结果返回
func (AwaitDirector) AnyOK ¶ added in v0.1.56
func (ad AwaitDirector) AnyOK(fun generic.ActionVar1[runtime.Ret, any], va ...any)
AnyOK 异步等待任意一个结果成功返回
type ComponentBehavior ¶ added in v0.1.56
type ComponentBehavior struct {
ec.ComponentBehavior
}
ComponentBehavior 组件行为,在开发新组件时,匿名嵌入至组件结构体中
func (*ComponentBehavior) Async ¶ added in v0.1.56
func (c *ComponentBehavior) Async(fun generic.FuncVar0[any, runtime.Ret], va ...any) runtime.AsyncRet
Async 异步执行代码,有返回值
func (*ComponentBehavior) AsyncVoid ¶ added in v0.1.56
func (c *ComponentBehavior) AsyncVoid(fun generic.ActionVar0[any], va ...any) runtime.AsyncRet
AsyncVoid 异步执行代码,无返回值
func (*ComponentBehavior) Await ¶ added in v0.1.56
func (c *ComponentBehavior) Await(asyncRet ...runtime.AsyncRet) AwaitDirector
Await 异步等待结果返回
func (*ComponentBehavior) BalanceOneWayRPC ¶ added in v0.1.56
func (c *ComponentBehavior) BalanceOneWayRPC(service, comp, method string, args ...any) error
BalanceOneWayRPC 使用负载均衡模式,向分布式实体目标服务发送单向RPC
func (*ComponentBehavior) BalanceRPC ¶ added in v0.1.56
func (c *ComponentBehavior) BalanceRPC(service, comp, method string, args ...any) runtime.AsyncRet
BalanceRPC 使用负载均衡模式,向分布式实体目标服务发送RPC
func (*ComponentBehavior) BroadcastOneWayRPC ¶ added in v0.1.56
func (c *ComponentBehavior) BroadcastOneWayRPC(service, comp, method string, args ...any) error
BroadcastOneWayRPC 使用广播模式,向分布式实体目标服务发送单向RPC
func (*ComponentBehavior) CliRPC ¶ added in v0.1.56
func (c *ComponentBehavior) CliRPC(method string, args ...any) runtime.AsyncRet
CliRPC 向客户端发送RPC
func (*ComponentBehavior) CliRPCToEntity ¶ added in v0.1.56
func (c *ComponentBehavior) CliRPCToEntity(entityId uid.Id, method string, args ...any) runtime.AsyncRet
CliRPCToEntity 向客户端实体发送RPC
func (*ComponentBehavior) GetRuntime ¶ added in v0.1.56
func (c *ComponentBehavior) GetRuntime() Runtime
GetRuntime 获取运行时
func (*ComponentBehavior) GetService ¶ added in v0.1.56
func (c *ComponentBehavior) GetService() Service
GetService 获取服务
func (*ComponentBehavior) GlobalBalanceOneWayRPC ¶ added in v0.1.56
func (c *ComponentBehavior) GlobalBalanceOneWayRPC(comp, method string, args ...any) error
GlobalBalanceOneWayRPC 使用全局负载均衡模式,向分布式实体任意服务发送单向RPC
func (*ComponentBehavior) GlobalBalanceRPC ¶ added in v0.1.56
func (c *ComponentBehavior) GlobalBalanceRPC(comp, method string, args ...any) runtime.AsyncRet
GlobalBalanceRPC 使用全局负载均衡模式,向分布式实体任意服务发送RPC
func (*ComponentBehavior) GlobalBroadcastOneWayRPC ¶ added in v0.1.56
func (c *ComponentBehavior) GlobalBroadcastOneWayRPC(comp, method string, args ...any) error
GlobalBroadcastOneWayRPC 使用全局广播模式,向分布式实体所有服务发送单向RPC
func (*ComponentBehavior) GoVoid ¶ added in v0.1.56
func (c *ComponentBehavior) GoVoid(fun generic.ActionVar0[any], va ...any) runtime.AsyncRet
GoVoid 使用新线程执行代码,无返回值(注意线程安全)
func (*ComponentBehavior) OneWayCliRPC ¶ added in v0.1.56
func (c *ComponentBehavior) OneWayCliRPC(method string, args ...any) error
OneWayCliRPC 向客户端发送单向RPC
func (*ComponentBehavior) OneWayCliRPCToEntity ¶ added in v0.1.56
OneWayCliRPCToEntity 向客户端实体发送单向RPC
func (*ComponentBehavior) OneWayRPC ¶ added in v0.1.56
func (c *ComponentBehavior) OneWayRPC(service, comp, method string, args ...any) error
OneWayRPC 向分布式实体目标服务发送单向RPC
func (*ComponentBehavior) RPC ¶ added in v0.1.56
func (c *ComponentBehavior) RPC(service, comp, method string, args ...any) runtime.AsyncRet
RPC 向分布式实体目标服务发送RPC
func (*ComponentBehavior) TimeAfter ¶ added in v0.1.56
func (c *ComponentBehavior) TimeAfter(dur time.Duration) runtime.AsyncRet
TimeAfter 定时器,指定时长
type IRuntimeInstantiation ¶ added in v0.1.45
IRuntimeInstantiation 运行时实例化接口
type IServiceInstantiation ¶ added in v0.1.45
IServiceInstantiation 服务实例化接口
type InstallRuntimeLogger ¶
type InstallServiceBroker ¶
type InstallServiceConfig ¶
type InstallServiceDistSync ¶
type InstallServiceLogger ¶
type InstallServiceRPC ¶
type InstallServiceRegistry ¶
type LifecycleRuntimeBirth ¶
type LifecycleRuntimeBuilt ¶ added in v0.1.45
type LifecycleRuntimeStarted ¶
type LifecycleServiceBirth ¶
type LifecycleServiceBuilt ¶ added in v0.1.45
type LifecycleServiceStarted ¶
type Runtime ¶ added in v0.1.56
Runtime 运行时
func (Runtime) CreateEntity ¶ added in v0.1.56
func (rt Runtime) CreateEntity() core.EntityCreator
CreateEntity 创建实体
func (Runtime) GetDistEntities ¶ added in v0.1.56
func (rt Runtime) GetDistEntities() dent.IDistEntities
GetDistEntities 获取分布式实体支持插件
type RuntimeCreator ¶
type RuntimeCreator struct {
// contains filtered or unexported fields
}
RuntimeCreator 运行时构建器
func (RuntimeCreator) AutoRun ¶
func (c RuntimeCreator) AutoRun(auto bool) RuntimeCreator
AutoRun 自动开始运行
func (RuntimeCreator) FPS ¶ added in v0.1.27
func (c RuntimeCreator) FPS(fps float32) RuntimeCreator
FPS 帧率
func (RuntimeCreator) PanicHandling ¶ added in v0.1.27
func (c RuntimeCreator) PanicHandling(autoRecover bool, reportError chan error) RuntimeCreator
PanicHandling panic时的处理方式
func (RuntimeCreator) ProcessQueueCapacity ¶
func (c RuntimeCreator) ProcessQueueCapacity(cap int) RuntimeCreator
ProcessQueueCapacity 任务处理流水线大小
func (RuntimeCreator) Setup ¶
func (c RuntimeCreator) Setup(generic any) RuntimeCreator
Setup 安装运行时泛化类型
type RuntimeGeneric ¶ added in v0.1.37
type RuntimeGeneric struct {
// contains filtered or unexported fields
}
RuntimeGeneric 运行时泛化类型
func (*RuntimeGeneric) GetMemKVs ¶ added in v0.1.37
func (r *RuntimeGeneric) GetMemKVs() *sync.Map
GetMemKVs 获取服务内存KV数据库
func (*RuntimeGeneric) GetServiceCtx ¶ added in v0.1.37
func (r *RuntimeGeneric) GetServiceCtx() service.Context
GetServiceCtx 获取服务上下文
func (*RuntimeGeneric) GetStartupConf ¶ added in v0.1.37
func (r *RuntimeGeneric) GetStartupConf() *viper.Viper
GetStartupConf 获取启动参数配置
type RuntimeGenericT ¶ added in v0.1.62
type RuntimeGenericT[T any] struct { RuntimeGeneric }
RuntimeGenericT 运行时泛化类型实例化
func (*RuntimeGenericT[T]) Instantiation ¶ added in v0.1.62
func (r *RuntimeGenericT[T]) Instantiation() runtime.Context
Instantiation 实例化
type RuntimeInstance ¶ added in v0.1.45
type RuntimeInstance struct {
runtime.ContextBehavior
}
RuntimeInstance 运行时实例
func (*RuntimeInstance) CreateEntity ¶ added in v0.1.45
func (instance *RuntimeInstance) CreateEntity() core.EntityCreator
CreateEntity 创建实体
func (*RuntimeInstance) GetMemKVs ¶ added in v0.1.45
func (instance *RuntimeInstance) GetMemKVs() *sync.Map
GetMemKVs 获取服务内存KV数据库
func (*RuntimeInstance) GetStartupConf ¶ added in v0.1.45
func (instance *RuntimeInstance) GetStartupConf() *viper.Viper
GetStartupConf 获取启动参数配置
type Service ¶ added in v0.1.56
Service 服务
func (Service) CreateEntityPT ¶ added in v0.1.56
func (serv Service) CreateEntityPT() core.EntityPTCreator
CreateEntityPT 创建实体原型
func (Service) CreateRuntime ¶ added in v0.1.56
func (serv Service) CreateRuntime() RuntimeCreator
CreateRuntime 创建运行时
func (Service) GetDistEntityQuerier ¶ added in v0.1.56
func (serv Service) GetDistEntityQuerier() dentq.IDistEntityQuerier
GetDistEntityQuerier 获取分布式实体查询插件
func (Service) GetDistService ¶ added in v0.1.56
func (serv Service) GetDistService() dserv.IDistService
GetDistService 获取分布式服务插件
func (Service) GetDistSync ¶ added in v0.1.56
GetDistSync 获取分布式同步插件
func (Service) GetRegistry ¶ added in v0.1.56
GetRegistry 获取服务发现插件
func (Service) GetStartupConf ¶ added in v0.1.56
GetStartupConf 获取启动参数配置
type ServiceGeneric ¶ added in v0.1.37
type ServiceGeneric struct {
// contains filtered or unexported fields
}
ServiceGeneric 服务泛化类型
func (*ServiceGeneric) GetName ¶ added in v0.1.37
func (s *ServiceGeneric) GetName() string
GetName 获取服务名称
func (*ServiceGeneric) GetStartupConf ¶ added in v0.1.37
func (s *ServiceGeneric) GetStartupConf() *viper.Viper
GetStartupConf 获取启动参数配置
type ServiceGenericT ¶ added in v0.1.62
type ServiceGenericT[T any] struct { ServiceGeneric }
ServiceGenericT 服务泛化类型实例化
func (*ServiceGenericT[T]) Instantiation ¶ added in v0.1.62
func (s *ServiceGenericT[T]) Instantiation() service.Context
Instantiation 实例化
type ServiceInstance ¶ added in v0.1.45
type ServiceInstance struct {
service.ContextBehavior
}
ServiceInstance 服务实例
func (*ServiceInstance) CreateEntityPT ¶ added in v0.1.45
func (instance *ServiceInstance) CreateEntityPT() core.EntityPTCreator
CreateEntityPT 创建实体原型
func (*ServiceInstance) CreateRuntime ¶ added in v0.1.45
func (instance *ServiceInstance) CreateRuntime() RuntimeCreator
CreateRuntime 创建运行时
func (*ServiceInstance) GetBroker ¶ added in v0.1.45
func (instance *ServiceInstance) GetBroker() broker.IBroker
GetBroker 获取broker插件
func (*ServiceInstance) GetConf ¶ added in v0.1.45
func (instance *ServiceInstance) GetConf() conf.IConfig
GetConf 获取配置插件
func (*ServiceInstance) GetDistEntityQuerier ¶ added in v0.1.45
func (instance *ServiceInstance) GetDistEntityQuerier() dentq.IDistEntityQuerier
GetDistEntityQuerier 获取分布式实体查询插件
func (*ServiceInstance) GetDistService ¶ added in v0.1.45
func (instance *ServiceInstance) GetDistService() dserv.IDistService
GetDistService 获取分布式服务插件
func (*ServiceInstance) GetDistSync ¶ added in v0.1.45
func (instance *ServiceInstance) GetDistSync() dsync.IDistSync
GetDistSync 获取分布式同步插件
func (*ServiceInstance) GetMemKVs ¶ added in v0.1.45
func (instance *ServiceInstance) GetMemKVs() *sync.Map
GetMemKVs 获取服务内存KV数据库
func (*ServiceInstance) GetRPC ¶ added in v0.1.45
func (instance *ServiceInstance) GetRPC() rpc.IRPC
GetRPC 获取RPC支持插件
func (*ServiceInstance) GetRegistry ¶ added in v0.1.45
func (instance *ServiceInstance) GetRegistry() discovery.IRegistry
GetRegistry 获取服务发现插件
func (*ServiceInstance) GetStartupConf ¶ added in v0.1.45
func (instance *ServiceInstance) GetStartupConf() *viper.Viper
GetStartupConf 获取启动参数配置
func (*ServiceInstance) GetStartupIdx ¶ added in v0.1.48
func (instance *ServiceInstance) GetStartupIdx() int
GetStartupIdx 获取启动索引
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
net
|
|
gap
Package gap Golaxy应用层协议(golaxy application protocol),适用于开发应用层通信消息,需要工作在GTP协议或MQ之上,支持消息判重,解决了幂等性问题。
|
Package gap Golaxy应用层协议(golaxy application protocol),适用于开发应用层通信消息,需要工作在GTP协议或MQ之上,支持消息判重,解决了幂等性问题。 |
gtp
Package gtp Golaxy传输层协议(golaxy transfer protocol),适用于长连接、实时通信的工作场景,需要工作在可靠网络协议(TCP/WebSocket)之上,支持链路加密、链路鉴权、断线续连等特性。
|
Package gtp Golaxy传输层协议(golaxy transfer protocol),适用于长连接、实时通信的工作场景,需要工作在可靠网络协议(TCP/WebSocket)之上,支持链路加密、链路鉴权、断线续连等特性。 |
plugins
|
|
dentq
+k8s:deepcopy-gen=package
|
+k8s:deepcopy-gen=package |
discovery
+k8s:deepcopy-gen=package
|
+k8s:deepcopy-gen=package |
util
|
|