nsq

package
v0.0.0-...-1a196e1 Latest Latest
Warning

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

Go to latest
Published: Apr 10, 2017 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Channel

type Channel struct {
	Topic    string
	Name     string
	Producer *api.Producer
}

Channel 呈現了一個基於特定話題的頻道。

type Client

type Client struct {
	Config    Config
	APIConfig *api.Config
	Producer  *api.Producer
}

Client 是 NSQ 的客戶端。

func NewClient

func NewClient(conf Config, apiConf *api.Config) *Client

NewClient 會建立一個新的客戶端。

func (*Client) Channel

func (c *Client) Channel(topic, name string) *Channel

Channel 會回傳一個指定的頻道。

func (*Client) CreateChannel

func (c *Client) CreateChannel(topic, ch string) *Channel

CreateChannel 會建立並返回一個基於指定話題的頻道。

func (*Client) CreateTopic

func (c *Client) CreateTopic(name string) *Topic

CreateTopic 會建立並返回一個話題。

func (*Client) NewConsumer

func (c *Client) NewConsumer(ch *Channel) (*Consumer, error)

NewConsumer 會建立並返回一個基於指定頻道的消費者。

func (*Client) Topic

func (c *Client) Topic(name string) *Topic

Topic 會回傳一個指定的話題。

type Config

type Config struct {
	// Producers 是連線到 NSQ 生產者的 HTTP、TCP 設定檔。
	Producers Producers
	// Lookupds 是用來設定單個或多個 NSQ 的 Lookupd 位址。
	Lookupds []string
}

Config 是 NSQ 建立客戶端時的設定檔。

type Consumer

type Consumer struct {
	Topic    string
	Channel  string
	Lookupds []string
	Lookupd  string
	// contains filtered or unexported fields
}

Consumer 呈現了一個訊息消費者。

func (*Consumer) AddHandler

func (c *Consumer) AddHandler(handler func(msg *api.Message) error)

AddHandler 會替這個消費者新增一個處理函式,一但消費者接收到任何訊息就會呼叫這個函式。

func (*Consumer) ConnectToNSQLookupds

func (c *Consumer) ConnectToNSQLookupds()

ConnectToNSQLookupds 會讓目前的消費者連線到 NSQLookupds 叢集。

type Producers

type Producers struct {
	TCP  string
	HTTP string
}

Producers 存放著訊息生產者的位址資訊。

type Topic

type Topic struct {
	Name     string
	Producer *api.Producer
}

Topic 呈現了一個話題。

func (*Topic) MultiPublish

func (t *Topic) MultiPublish(body [][]byte) error

MultiPublish 可以在目前的話題上發佈多個訊息。

func (*Topic) Publish

func (t *Topic) Publish(body []byte) error

Publish 會在目前的話題上發布一個新的訊息。

Jump to

Keyboard shortcuts

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