app

package
v1.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 8, 2021 License: Apache-2.0 Imports: 24 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Opts = new(struct {
		Dev    bool   // 是否开发模式
		PsAddr string // gops分析
		Lang   string // 设置语言环境
	})
)

Functions

func APP

func APP() *app

服务单例

func AddHandler

func AddHandler(handles ...interface{})

注册RPC服务

func AddMetadata

func AddMetadata(meta map[string]string)

增加meta信息

func AddPub

func AddPub(names ...string)

注册发布者

func AddSub

func AddSub(name string, h interface{}, queue ...bool) error

注册订阅

func AddSubQueue

func AddSubQueue(name string, h interface{}) error

func CallCtx

func CallCtx(ctx context.Context, srvName string, method string, in interface{}, out interface{}, opts ...client.CallOption) error

Call 通过名称调用RPC

@name 服务名称
@method rpc方法名称. 即 serviceName.rpcName
@in 请求参数
@out 返回数据
@nodeId 指定节点ID

func CallNode

func CallNode(ctx context.Context, srvName string, method string, in interface{}, out interface{}, nodeId ...string) error

CallCtx 通过名称调用RPC

@name 服务名称
@method rpc方法名称. 即 serviceName.rpcName
@in 请求参数
@out 返回数据
@nodeId 指定节点ID

func Cancel

func Cancel(name string, id ...string) error

取消服务

func CheckServiceNode

func CheckServiceNode(srvName string, nodeId string) bool

CheckServiceNode 检查服务节点是否存在

func Client

func Client() client.Client

Client 获取客户端

func Close

func Close()

关闭服务

func ExcludeServiceNodeIds

func ExcludeServiceNodeIds(srvName string, exclude ...string) []string

ExcludeServiceNodeIds 获取指定服务所有节点的ID列表

func FilterNodeId

func FilterNodeId(srvName, id string) selector.Filter

根据节点ID过滤服务

func FilterSelector

func FilterSelector(filter selector.Filter) client.CallOption

选择器过滤

func FilterServiceNode

func FilterServiceNode(srvName, nodeId string) client.CallOption

选择指定服务节点

func FilterServiceNodeIds

func FilterServiceNodeIds(srvName string, filter ...string) []string

FilterServiceNodeIds 获取指定服务所有节点的ID列表

func GetPub

func GetPub(name string) micro.Publisher

获取发布者

func GetRandomNodeId

func GetRandomNodeId(srvName string) (string, error)

获取随机节点ID

func GetServiceNodeIds

func GetServiceNodeIds(srvName string) []string

GetServiceNodeIds 获取指定服务所有节点的ID列表

func GetServices

func GetServices(name string) []*registry.Service

获取服务节点列表

func Id

func Id() string

Id 获取服务UUID

func Init

func Init(opts ...micro.Option)

启动服务

func Name

func Name() string

Name 获取服务名称

func NameId

func NameId() string

NameId 获取服务节点ID

func New

func New(name string, version string, extra ...[]cli.Flag)

New 创建服务

func Pub

func Pub(name string, msg interface{}, opts ...client.PublishOption) error

发布消息

func PubCtx

func PubCtx(ctx context.Context, name string, msg interface{}, opts ...client.PublishOption) error

func Registry

func Registry() registry.Registry

获取服务发现注册信息

func Run

func Run() error

启动服务

func Server

func Server() server.Server

Server 获取服务端

func Srv

func Srv() micro.Service

Service 获取服务对象

func Version

func Version() string

Version 获取服务版本

Types

type ServiceNode

type ServiceNode struct {
	UUID     string            `json:"uuid"`
	Id       string            `json:"id"`
	Version  string            `json:"version"`
	Address  string            `json:"address"`
	Metadata map[string]string `json:"metadata"`
}

服务节点

func GetRandomServiceNode

func GetRandomServiceNode(srvName string) (*ServiceNode, error)

获取随机节点

func GetServiceNode

func GetServiceNode(srvName string, nodeId string) *ServiceNode

GetServiceNode 获取指定服务指定节点

func GetServiceNodes

func GetServiceNodes(srvName string) []*ServiceNode

GetServiceNodes 获取指定服务所有节点

func GetServiceNodesVersion

func GetServiceNodesVersion(srvName string, version string) []*ServiceNode

GetServiceNodesVersion 获取指定版本服务节点

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL