Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var (
DefaultDialTimeout = time.Second * 5
)
Functions ¶
Types ¶
type Client ¶
type Client interface { Socket }
Client client interface to implement send, receive, and close methods
type DialOption ¶
type DialOption func(*DialOptions)
func WithTimeout ¶
func WithTimeout(d time.Duration) DialOption
Timeout used when dialling the remote side
type DialOptions ¶
type ListenOption ¶
type ListenOption func(*ListenOptions)
type ListenOptions ¶
type Option ¶
type Option func(*Options)
func Codec ¶
Codec sets the codec used for encoding where the transport does not support message headers
type Socket ¶
type Socket interface { Send(Header []byte, Body []byte, Metadata map[string]string, ID int) error Recv() ([]byte, []byte, map[string]string, int, error) Close() error }
Socket wrapp codec and net.conn
type Transport ¶
type Transport interface { //return a new client Dial(addr string, opts ...DialOption) (Client, error) Listen(addr string, opts ...ListenOption) (Listener, error) String() string }
Transport is an interface for communication between services. It uses socket send/recv semantics and could be implemented with various protocol: HTTP, RabbitMQ, NATS, ...
Click to show internal directories.
Click to hide internal directories.