tally: github.com/uber-go/tally/m3/thriftudp Index | Files

package thriftudp

import "github.com/uber-go/tally/m3/thriftudp"

Index

Package Files

multitransport.go transport.go

Constants

const MaxLength = 65000

MaxLength of UDP packet

type TMultiUDPTransport Uses

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

TMultiUDPTransport does multiUDP as a thrift.TTransport

func NewTMultiUDPClientTransport Uses

func NewTMultiUDPClientTransport(
    destHostPorts []string,
    locHostPort string,
) (*TMultiUDPTransport, error)

NewTMultiUDPClientTransport creates a set of net.UDPConn-backed TTransports for Thrift clients All writes are buffered and flushed in one UDP packet. If locHostPort is not "", it will be used as the local address for the connection Example:

trans, err := thriftudp.NewTMultiUDPClientTransport([]string{"192.168.1.1:9090","192.168.1.2:9090"}, "")

func (*TMultiUDPTransport) Close Uses

func (p *TMultiUDPTransport) Close() error

Close closes the connections of the underlying transports

func (*TMultiUDPTransport) Flush Uses

func (p *TMultiUDPTransport) Flush() error

Flush flushes the write buffer of the underlying transports

func (*TMultiUDPTransport) IsOpen Uses

func (p *TMultiUDPTransport) IsOpen() bool

IsOpen returns true if the connections of the underlying transports are open

func (*TMultiUDPTransport) Open Uses

func (p *TMultiUDPTransport) Open() error

Open the connections of the underlying transports

func (*TMultiUDPTransport) Read Uses

func (p *TMultiUDPTransport) Read(buf []byte) (int, error)

Read is not supported for multiple underlying transports

func (*TMultiUDPTransport) RemainingBytes Uses

func (p *TMultiUDPTransport) RemainingBytes() uint64

RemainingBytes is not supported for multiple underlying transports

func (*TMultiUDPTransport) Write Uses

func (p *TMultiUDPTransport) Write(buff []byte) (int, error)

Write writes specified buf to the write buffer of underlying transports

type TUDPTransport Uses

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

TUDPTransport does UDP as a thrift.TTransport

func NewTUDPClientTransport Uses

func NewTUDPClientTransport(destHostPort string, locHostPort string) (*TUDPTransport, error)

NewTUDPClientTransport creates a net.UDPConn-backed TTransport for Thrift clients All writes are buffered and flushed in one UDP packet. If locHostPort is not "", it will be used as the local address for the connection Example:

trans, err := thriftudp.NewTUDPClientTransport("192.168.1.1:9090", "")

func NewTUDPServerTransport Uses

func NewTUDPServerTransport(hostPort string) (*TUDPTransport, error)

NewTUDPServerTransport creates a net.UDPConn-backed TTransport for Thrift servers It will listen for incoming udp packets on the specified host/port Example:

trans, err := thriftudp.NewTUDPClientTransport("localhost:9001")

func (*TUDPTransport) Addr Uses

func (p *TUDPTransport) Addr() net.Addr

Addr returns the address that the transport is listening on or writing to

func (*TUDPTransport) Close Uses

func (p *TUDPTransport) Close() error

Close closes the transport and the underlying connection. Note: the current implementation allows Close to be called multiple times without an error.

func (*TUDPTransport) Conn Uses

func (p *TUDPTransport) Conn() *net.UDPConn

Conn retrieves the underlying net.UDPConn

func (*TUDPTransport) Flush Uses

func (p *TUDPTransport) Flush() error

Flush flushes the write buffer as one udp packet

func (*TUDPTransport) IsOpen Uses

func (p *TUDPTransport) IsOpen() bool

IsOpen returns true if the connection is open

func (*TUDPTransport) Open Uses

func (p *TUDPTransport) Open() error

Open does nothing as connection is opened on creation Required to maintain thrift.TTransport interface

func (*TUDPTransport) Read Uses

func (p *TUDPTransport) Read(buf []byte) (int, error)

Read reads one UDP packet and puts it in the specified buf

func (*TUDPTransport) RemainingBytes Uses

func (p *TUDPTransport) RemainingBytes() uint64

RemainingBytes returns the max number of bytes (same as Thrift's StreamTransport) as we do not know how many bytes we have left.

func (*TUDPTransport) Write Uses

func (p *TUDPTransport) Write(buf []byte) (int, error)

Write writes specified buf to the write buffer

Package thriftudp imports 5 packages (graph) and is imported by 1 packages. Updated 2019-07-27. Refresh now. Tools for package owners.