base

package
v0.0.0-...-417354f Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2020 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const ServicePrefix = "flex"

ServicePrefix 默认前缀

Variables

Log 全局日志对象

Functions

func CheckFunc

func CheckFunc(ctx context.Context, num int, fun func() bool) bool

CheckFunc 按周期检查

func Hooks

func Hooks(h zerolog.Hook)

Hooks 增加hooks

func NewEtcdClient

func NewEtcdClient(Endpoints []string, DialTimeout time.Duration) (*clientv3.Client, error)

NewEtcdClient 新建etcd对象

func NewSubLogger

func NewSubLogger(name string, value string) zerolog.Logger

NewSubLogger 生成子日志对象

func OpenPostgresqlClient

func OpenPostgresqlClient(conninfo string) (*sql.DB, error)

OpenPostgresqlClient 打开postgresql数据库

func RegisterService

func RegisterService(ctx context.Context, cli *clientv3.Client,
	config *ServiceConfig, ttl int64) error

RegisterService 注册服务

Types

type ArrayString

type ArrayString []string

ArrayString 字符串切片

type NSQQueueProducer

type NSQQueueProducer struct {
	// contains filtered or unexported fields
}

NSQQueueProducer nsq的消息队列接口

func (*NSQQueueProducer) Publish

func (qm *NSQQueueProducer) Publish(topicName string, messageBody []byte) error

Publish 发送消息

func (*NSQQueueProducer) Stop

func (qm *NSQQueueProducer) Stop()

Stop 结束消息生产

type QueueConsumer

type QueueConsumer struct {
	StopChan chan int
	// contains filtered or unexported fields
}

QueueConsumer 消息队列的消费者

func NewConsumer

func NewConsumer(topic string, channel string) (*QueueConsumer, error)

NewConsumer 新建消费者

func (*QueueConsumer) AddHandler

func (qc *QueueConsumer) AddHandler(hander nsq.Handler)

AddHandler 添加消息回调

func (*QueueConsumer) ConnectToNSQLookupd

func (qc *QueueConsumer) ConnectToNSQLookupd(address string) error

ConnectToNSQLookupd 连接消费队列

func (*QueueConsumer) Stop

func (qc *QueueConsumer) Stop()

Stop 结束消息消费

type QueueProducer

type QueueProducer interface {
	Stop()
	Publish(topicName string, messageBody []byte) error
}

QueueProducer 消息队列生成者接口

func NewQueueProducer

func NewQueueProducer(address string) (QueueProducer, error)

NewQueueProducer 新的消息生成者

type RunEtcdFunc

type RunEtcdFunc func(*Runner) error

RunEtcdFunc 启动对象回调函数

type Runner

type Runner struct {
	Ctx    context.Context
	Cli    *clientv3.Client
	Cancel context.CancelFunc
}

Runner 启动对象

func NewEtcdRunner

func NewEtcdRunner() (*Runner, error)

NewEtcdRunner 创建运行器

func (*Runner) Run

func (r *Runner) Run(fun RunEtcdFunc) error

Run 启动函数

type ServiceConfig

type ServiceConfig struct {
	Name    string      `json:"-"`
	Prefix  string      `json:"-"`
	Info    interface{} `json:"value"`
	Version string      `json:"-"`
	Host    string      `json:"host"`
	Port    int64       `json:"port"`
}

ServiceConfig 服务信息

func GetServiceList

func GetServiceList(ctx context.Context, cli *clientv3.Client,
	config *ServiceConfig, limit int64) ([]*ServiceConfig, error)

GetServiceList 得到服务列表

func Key2ServiceConfig

func Key2ServiceConfig(key string) *ServiceConfig

Key2ServiceConfig 由key生成服务信息对象

func NewServiceConfig

func NewServiceConfig(name string) *ServiceConfig

NewServiceConfig 新建服务配置信息

func ReadServiceInfo

func ReadServiceInfo(ctx context.Context, cli *clientv3.Client, name string) *ServiceConfig

ReadServiceInfo 读取服务信息

func (*ServiceConfig) GetAddr

func (sc *ServiceConfig) GetAddr() string

GetAddr 返回服务器地址

func (*ServiceConfig) GetInfoValue

func (sc *ServiceConfig) GetInfoValue() interface{}

GetInfoValue 返回info.value

func (*ServiceConfig) GetKey

func (sc *ServiceConfig) GetKey() string

GetKey 返回服务键名

func (*ServiceConfig) GetServiceName

func (sc *ServiceConfig) GetServiceName() string

GetServiceName 取得服务名称

func (*ServiceConfig) GetValueString

func (sc *ServiceConfig) GetValueString() string

GetValueString 返回配置信息字符串

func (*ServiceConfig) SetValueWithKey

func (sc *ServiceConfig) SetValueWithKey(k string, v interface{})

SetValueWithKey 按属性名更新

type ServiceReg

type ServiceReg struct {
	// contains filtered or unexported fields
}

ServiceReg 服务注册对象

func NewServiceReg

func NewServiceReg(ctx context.Context, config *ServiceConfig,
	cli *clientv3.Client, ttl int64) *ServiceReg

NewServiceReg 服务注册对象

func (*ServiceReg) Start

func (sr *ServiceReg) Start() error

Start 启动服务

func (*ServiceReg) Stop

func (sr *ServiceReg) Stop()

Stop 结束服务

type SeverityHook

type SeverityHook struct{}

func (SeverityHook) Run

func (h SeverityHook) Run(e *zerolog.Event, level zerolog.Level, msg string)

type StringArray

type StringArray []string

func (*StringArray) Get

func (a *StringArray) Get() interface{}

func (*StringArray) Set

func (a *StringArray) Set(s string) error

func (*StringArray) String

func (a *StringArray) String() string

Jump to

Keyboard shortcuts

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