Documentation
¶
Index ¶
- Constants
- Variables
- func InitComet(conn *zk.Conn, migrateLockPath, fpath string, retry, ping time.Duration)
- func InitMessage(conn *zk.Conn, fpath string, retry, ping time.Duration)
- type CometMigrateArgs
- type CometNewArgs
- type CometNodeEvent
- type CometNodeInfo
- type CometPushPrivateArgs
- type CometPushPrivatesArgs
- type CometPushPrivatesResp
- type CometPushPublicArgs
- type Message
- type MessageGetPrivateArgs
- type MessageGetResp
- type MessageNodeEvent
- type MessageNodeInfo
- type MessageSavePrivateArgs
- type MessageSavePrivatesArgs
- type MessageSavePrivatesResp
- type MessageSavePublishArgs
- type OldMessage
- type RandLB
- type WeightRpc
Constants ¶
View Source
const ( CometServicePushPrivate = "CometRPC.PushPrivate" CometServicePushPrivates = "CometRPC.PushPrivates" CometServiceMigrate = "CometRPC.Migrate" )
View Source
const ( // group id PrivateGroupId = 0 PublicGroupId = 1 // message rpc service MessageService = "MessageRPC" MessageServiceGetPrivate = "MessageRPC.GetPrivate" MessageServiceSavePrivate = "MessageRPC.SavePrivate" MessageServiceSavePrivates = "MessageRPC.SavePrivates" MessageServiceDelPrivate = "MessageRPC.DelPrivate" )
View Source
const ( // common // ok OK = 0 // param error ParamErr = 65534 // internal error InternalErr = 65535 )
Variables ¶
View Source
var ( ErrRandLBLength = errors.New("clients and addrs length not match") ErrRandLBAddr = errors.New("clients map no addr key") )
View Source
var (
ErrCometRPC = errors.New("comet rpc call failed")
)
View Source
var (
ErrParam = errors.New("parameter error")
)
Functions ¶
Types ¶
type CometMigrateArgs ¶
Channel Migrate Args
type CometNewArgs ¶
type CometNewArgs struct { Expire int64 // message expire second Token string // auth token Key string // subscriber key }
Channel New Args
type CometNodeEvent ¶
type CometNodeEvent struct { // node name(node1, node2...) Key string // node info Value *CometNodeInfo // event type Event int }
type CometNodeInfo ¶
type CometNodeInfo struct { RpcAddr []string `json:"ws"` TcpAddr []string `json:"tcp"` WsAddr []string `json:"rpc"` Weight int `json:"weight"` Rpc *RandLB `json:"-"` }
CometNodeData stored in zookeeper
func GetComet ¶
func GetComet(key string) *CometNodeInfo
GetComet get the node infomation under the node.
type CometPushPrivateArgs ¶
type CometPushPrivateArgs struct { Key string // subscriber key Fkey string // fromUserName Msg json.RawMessage // message content Expire uint // message expire second }
Channel Push Private Message Args
type CometPushPrivatesArgs ¶
type CometPushPrivatesArgs struct { Keys []string // subscriber keys Msg json.RawMessage // message content Expire uint // message expire second }
Channel Push multi Private Message Args
type CometPushPrivatesResp ¶
type CometPushPrivatesResp struct {
FKeys []string // subscriber keys
}
Channel Push multi Private Message response
type CometPushPublicArgs ¶
Channel Push Public Message Args
type Message ¶
type Message struct { Msg json.RawMessage `json:"msg"` // message content MsgId int64 `json:"mid"` // message id GroupId uint `json:"gid"` // group id }
The Message struct
type MessageGetPrivateArgs ¶
Message Get args
type MessageGetResp ¶
type MessageGetResp struct {
Msgs []*Message // messages
}
Message Get Response
type MessageNodeEvent ¶
type MessageNodeInfo ¶
Message node info
type MessageSavePrivateArgs ¶
type MessageSavePrivateArgs struct { Key string // subscriber key Fkey string // fromUser Msg json.RawMessage // message content MsgId int64 // message id Expire uint // message expire second }
Message SavePrivate args
type MessageSavePrivatesArgs ¶
type MessageSavePrivatesArgs struct { Keys []string // subscriber keys Msg json.RawMessage // message content MsgId int64 // message id Expire uint // message expire second }
Message SavePrivates args
type MessageSavePrivatesResp ¶
type MessageSavePrivatesResp struct {
FKeys []string // failed key
}
Message SavePrivates response
type MessageSavePublishArgs ¶
type MessageSavePublishArgs struct { MsgID int64 // message id Msg string // message content Expire int64 // message expire second }
Message SavePublish args
type OldMessage ¶
type OldMessage struct { Msg string `json:"msg"` // Message MsgId int64 `json:"mid"` // Message id GroupId uint `json:"gid"` // Group id }
The Old Message struct (Compatible), TODO remove it.
type RandLB ¶
random load balancing object
var (
MessageRPC *RandLB
)
Click to show internal directories.
Click to hide internal directories.