model

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2021 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	InvalidAvailable   = 0 //可用
	InvalidUnavailable = 1 //不可用
)

Variables

This section is empty.

Functions

func FormatConsumeConfigListForMap

func FormatConsumeConfigListForMap(consumeConfigList []ConsumeConfig) map[int]ConsumeConfig

把数组形式的配置列表转换成map,key是id

func IsErrRecordNotFound

func IsErrRecordNotFound(err error) bool

func NewDB

func NewDB(host, port, username, password, dbname string)

Types

type ConsumeConfig

type ConsumeConfig struct {
	//主键ID
	Id int `json:"id" gorm:"primaryKey"`
	//队列名
	Topic string `json:"topic"`
	//通道名
	Channel string `json:"channel"`
	//描述
	Description string `json:"description"`
	//责任人
	Owner string `json:"owner"`
	//积压报警阈值
	MonitorThreshold int `json:"monitorThreshold"`
	//该队列的并发量
	HandleNum int `json:"handleNum"`
	//NSQD最多同时推送多少个消息
	MaxInFlight int `json:"maxInFlight"`
	//失败,超时等情况是否重新入队
	IsRequeue bool `json:"isRequeue"`
	//超时时间
	TimeoutDial time.Duration `json:"timeoutDial"`
	//读超时时间
	TimeoutRead time.Duration `json:"timeoutRead"`
	//写超时时间
	TimeoutWrite time.Duration `json:"timeoutWrite"`
	//是否有效
	Invalid int `json:"invalid"`
	//创建时间
	CreatedAt time.Time `json:"createdAt"`
	//更新时间
	UpdatedAt time.Time `json:"updatedAt"`

	//那些work机器可以消费该队列
	ServerList []ConsumeServerMap `json:"serverList" gorm:"-"`
	//nsq客户端的消费者
	Consumer *nsq.Consumer `json:"-" gorm:"-"`
	// contains filtered or unexported fields
}

表示一个队列,即唯一的Topic+Channel

func GetAvailableConsumeList

func GetAvailableConsumeList() ([]ConsumeConfig, error)

获取可用的消费者列表

func (*ConsumeConfig) Create

func (c *ConsumeConfig) Create() (int, error)

func (ConsumeConfig) CreateTable

func (ConsumeConfig) CreateTable() error

定义结构体,然后让ORM来帮你建表,这个结构体的标签我觉得写起来贼麻烦,还不如直接来建表语句。

func (*ConsumeConfig) Delete

func (c *ConsumeConfig) Delete() (int64, error)

func (*ConsumeConfig) Get

func (c *ConsumeConfig) Get() (int64, error)

func (*ConsumeConfig) GetConsumerUniqueId

func (c *ConsumeConfig) GetConsumerUniqueId() [16]byte

func (ConsumeConfig) GetStatus

func (c ConsumeConfig) GetStatus() int32

func (ConsumeConfig) IsEqual

func (c ConsumeConfig) IsEqual(newConsume ConsumeConfig) bool

两份配置是否相等

func (*ConsumeConfig) Page

func (c *ConsumeConfig) Page(topic string, page int) (PageResult, error)

func (*ConsumeConfig) SetConsumerUniqueId

func (c *ConsumeConfig) SetConsumerUniqueId(consumerUniqueId [16]byte)

func (*ConsumeConfig) SetStatusClosed

func (c *ConsumeConfig) SetStatusClosed()

func (*ConsumeConfig) SetStatusFailed

func (c *ConsumeConfig) SetStatusFailed()

func (*ConsumeConfig) SetStatusSuccess

func (c *ConsumeConfig) SetStatusSuccess()

func (*ConsumeConfig) SetStatusWait

func (c *ConsumeConfig) SetStatusWait()

func (ConsumeConfig) StatusIsClose

func (c ConsumeConfig) StatusIsClose() bool

func (ConsumeConfig) StatusIsSuccess

func (c ConsumeConfig) StatusIsSuccess() bool

func (ConsumeConfig) TableName

func (ConsumeConfig) TableName() string

func (*ConsumeConfig) Update

func (c *ConsumeConfig) Update() (int64, error)

func (*ConsumeConfig) WorkList

func (c *ConsumeConfig) WorkList() error

type ConsumeServerMap

type ConsumeServerMap struct {
	Id        int `json:"id" gorm:"primaryKey"`
	Consumeid int `json:"consumeid"`
	Serverid  int `json:"serverid"`
	Weight    int `json:"weight"`
	Invalid   int `json:"invalid"`
	//创建时间
	CreatedAt time.Time `json:"createdAt"`
	//更新时间
	UpdatedAt time.Time `json:"updatedAt"`

	WorkServer WorkServer `json:"workServer" gorm:"-"`
}

func (*ConsumeServerMap) AllByConsumeid

func (m *ConsumeServerMap) AllByConsumeid(consumeid int) ([]ConsumeServerMap, error)

func (*ConsumeServerMap) Create

func (m *ConsumeServerMap) Create() (int, error)

func (ConsumeServerMap) CreateTable

func (ConsumeServerMap) CreateTable() error

func (*ConsumeServerMap) Delete

func (m *ConsumeServerMap) Delete() (int64, error)

func (*ConsumeServerMap) Get

func (m *ConsumeServerMap) Get() (int64, error)

func (ConsumeServerMap) IsEqual

func (m ConsumeServerMap) IsEqual(newMap ConsumeServerMap) bool

两份配置是否相等

func (ConsumeServerMap) TableName

func (ConsumeServerMap) TableName() string

func (*ConsumeServerMap) Update

func (m *ConsumeServerMap) Update() (int64, error)

type PageResult

type PageResult struct {
	Total  int64       `json:"total"`
	Page   int         `json:"page"`
	Result interface{} `json:"result"`
}

type WorkServer

type WorkServer struct {
	Id int `json:"id" gorm:"primaryKey"`
	//地址,IP:PORT
	Addr string `json:"addr"`
	//协议,如HTTP、FastCGI、CBNSQ
	Protocol string `json:"protocol"`
	//扩展字段
	Extra string `json:"extra"`
	//描述
	Description string `json:"description"`
	//责任人
	Owner string `json:"owner"`
	//是否有效
	Invalid int `json:"invalid"`
	//创建时间
	CreatedAt time.Time `json:"createdAt"`
	//更新时间
	UpdatedAt time.Time `json:"updatedAt"`
	// contains filtered or unexported fields
}

func (*WorkServer) All

func (w *WorkServer) All() ([]WorkServer, error)

func (*WorkServer) Create

func (w *WorkServer) Create() (int, error)

func (WorkServer) CreateTable

func (WorkServer) CreateTable() error

func (*WorkServer) Delete

func (w *WorkServer) Delete() (int64, error)

func (*WorkServer) Get

func (w *WorkServer) Get() (int64, error)

func (WorkServer) GetStatus

func (w WorkServer) GetStatus()

func (WorkServer) IsEqual

func (w WorkServer) IsEqual(newWork WorkServer) bool

两份配置是否相等

func (*WorkServer) Page

func (w *WorkServer) Page(page int) (PageResult, error)

func (*WorkServer) SetStatusAvailable

func (w *WorkServer) SetStatusAvailable()

func (*WorkServer) SetStatusUnAvailable

func (w *WorkServer) SetStatusUnAvailable()

func (WorkServer) TableName

func (WorkServer) TableName() string

func (*WorkServer) Update

func (w *WorkServer) Update() (int64, error)

Jump to

Keyboard shortcuts

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