Documentation
¶
Overview ¶
package benchmark provides simple tools to measure the performance of the IPC system.
Index ¶
- Variables
- type BenchmarkClientMethods
- type BenchmarkClientStub
- type BenchmarkEchoStreamClientCall
- type BenchmarkEchoStreamClientStream
- type BenchmarkEchoStreamServerCall
- type BenchmarkEchoStreamServerCallStub
- type BenchmarkEchoStreamServerStream
- type BenchmarkServerMethods
- type BenchmarkServerStub
- type BenchmarkServerStubMethods
- type Caveat
- type Certificate
- type CertificateChain
- type RpcRequest
- func (m *RpcRequest) GetDeadline() *TimeWireDeadline
- func (m *RpcRequest) GetEndStreamArgs() bool
- func (m *RpcRequest) GetGrantedBlessings() *SecurityWireBlessings
- func (m *RpcRequest) GetLanguage() string
- func (m *RpcRequest) GetMethod() string
- func (m *RpcRequest) GetNumPosArgs() uint64
- func (m *RpcRequest) GetSuffix() string
- func (m *RpcRequest) GetTraceRequest() *VtraceRequest
- func (*RpcRequest) ProtoMessage()
- func (m *RpcRequest) Reset()
- func (m *RpcRequest) String() string
- type RpcResponse
- func (m *RpcResponse) GetAckBlessings() bool
- func (m *RpcResponse) GetEndStreamResults() bool
- func (m *RpcResponse) GetError() string
- func (m *RpcResponse) GetNumPosResults() uint64
- func (m *RpcResponse) GetTraceResponse() *VtraceResponse
- func (*RpcResponse) ProtoMessage()
- func (m *RpcResponse) Reset()
- func (m *RpcResponse) String() string
- type SecurityWireBlessings
- type Signature
- type TimeDuration
- type TimeTime
- type TimeWireDeadline
- type VtraceAnnotation
- type VtraceRequest
- type VtraceResponse
- type VtraceSpanRecord
- func (m *VtraceSpanRecord) GetAnnotations() []*VtraceAnnotation
- func (m *VtraceSpanRecord) GetEnd() *TimeTime
- func (m *VtraceSpanRecord) GetId() []byte
- func (m *VtraceSpanRecord) GetName() string
- func (m *VtraceSpanRecord) GetParent() []byte
- func (m *VtraceSpanRecord) GetStart() *TimeTime
- func (*VtraceSpanRecord) ProtoMessage()
- func (m *VtraceSpanRecord) Reset()
- func (m *VtraceSpanRecord) String() string
- type VtraceTraceRecord
Constants ¶
This section is empty.
Variables ¶
var BenchmarkDesc rpc.InterfaceDesc = descBenchmark
BenchmarkDesc describes the Benchmark interface.
Functions ¶
This section is empty.
Types ¶
type BenchmarkClientMethods ¶
type BenchmarkClientMethods interface {
// Echo returns the payload that it receives.
Echo(_ *context.T, Payload []byte, _ ...rpc.CallOpt) ([]byte, error)
// EchoStream returns the payload that it receives via the stream.
EchoStream(*context.T, ...rpc.CallOpt) (BenchmarkEchoStreamClientCall, error)
}
BenchmarkClientMethods is the client interface containing Benchmark methods.
type BenchmarkClientStub ¶
type BenchmarkClientStub interface {
BenchmarkClientMethods
rpc.UniversalServiceMethods
}
BenchmarkClientStub adds universal methods to BenchmarkClientMethods.
func BenchmarkClient ¶
func BenchmarkClient(name string) BenchmarkClientStub
BenchmarkClient returns a client stub for Benchmark.
type BenchmarkEchoStreamClientCall ¶
type BenchmarkEchoStreamClientCall interface {
BenchmarkEchoStreamClientStream
// Finish performs the equivalent of SendStream().Close, then blocks until
// the server is done, and returns the positional return values for the call.
//
// Finish returns immediately if the call has been canceled; depending on the
// timing the output could either be an error signaling cancelation, or the
// valid positional return values from the server.
//
// Calling Finish is mandatory for releasing stream resources, unless the call
// has been canceled or any of the other methods return an error. Finish should
// be called at most once.
Finish() error
}
BenchmarkEchoStreamClientCall represents the call returned from Benchmark.EchoStream.
type BenchmarkEchoStreamClientStream ¶
type BenchmarkEchoStreamClientStream interface {
// RecvStream returns the receiver side of the Benchmark.EchoStream client stream.
RecvStream() interface {
// Advance stages an item so that it may be retrieved via Value. Returns
// true iff there is an item to retrieve. Advance must be called before
// Value is called. May block if an item is not available.
Advance() bool
// Value returns the item that was staged by Advance. May panic if Advance
// returned false or was not called. Never blocks.
Value() []byte
// Err returns any error encountered by Advance. Never blocks.
Err() error
}
// SendStream returns the send side of the Benchmark.EchoStream client stream.
SendStream() interface {
// Send places the item onto the output stream. Returns errors
// encountered while sending, or if Send is called after Close or
// the stream has been canceled. Blocks if there is no buffer
// space; will unblock when buffer space is available or after
// the stream has been canceled.
Send(item []byte) error
// Close indicates to the server that no more items will be sent;
// server Recv calls will receive io.EOF after all sent items.
// This is an optional call - e.g. a client might call Close if it
// needs to continue receiving items from the server after it's
// done sending. Returns errors encountered while closing, or if
// Close is called after the stream has been canceled. Like Send,
// blocks if there is no buffer space available.
Close() error
}
}
BenchmarkEchoStreamClientStream is the client stream for Benchmark.EchoStream.
type BenchmarkEchoStreamServerCall ¶
type BenchmarkEchoStreamServerCall interface {
rpc.ServerCall
BenchmarkEchoStreamServerStream
}
BenchmarkEchoStreamServerCall represents the context passed to Benchmark.EchoStream.
type BenchmarkEchoStreamServerCallStub ¶
type BenchmarkEchoStreamServerCallStub struct {
rpc.StreamServerCall
// contains filtered or unexported fields
}
BenchmarkEchoStreamServerCallStub is a wrapper that converts rpc.StreamServerCall into a typesafe stub that implements BenchmarkEchoStreamServerCall.
func (*BenchmarkEchoStreamServerCallStub) Init ¶
func (s *BenchmarkEchoStreamServerCallStub) Init(call rpc.StreamServerCall)
Init initializes BenchmarkEchoStreamServerCallStub from rpc.StreamServerCall.
func (*BenchmarkEchoStreamServerCallStub) RecvStream ¶
func (s *BenchmarkEchoStreamServerCallStub) RecvStream() interface { Advance() bool Value() []byte Err() error }
RecvStream returns the receiver side of the Benchmark.EchoStream server stream.
func (*BenchmarkEchoStreamServerCallStub) SendStream ¶
func (s *BenchmarkEchoStreamServerCallStub) SendStream() interface { Send(item []byte) error }
SendStream returns the send side of the Benchmark.EchoStream server stream.
type BenchmarkEchoStreamServerStream ¶
type BenchmarkEchoStreamServerStream interface {
// RecvStream returns the receiver side of the Benchmark.EchoStream server stream.
RecvStream() interface {
// Advance stages an item so that it may be retrieved via Value. Returns
// true iff there is an item to retrieve. Advance must be called before
// Value is called. May block if an item is not available.
Advance() bool
// Value returns the item that was staged by Advance. May panic if Advance
// returned false or was not called. Never blocks.
Value() []byte
// Err returns any error encountered by Advance. Never blocks.
Err() error
}
// SendStream returns the send side of the Benchmark.EchoStream server stream.
SendStream() interface {
// Send places the item onto the output stream. Returns errors encountered
// while sending. Blocks if there is no buffer space; will unblock when
// buffer space is available.
Send(item []byte) error
}
}
BenchmarkEchoStreamServerStream is the server stream for Benchmark.EchoStream.
type BenchmarkServerMethods ¶
type BenchmarkServerMethods interface {
// Echo returns the payload that it receives.
Echo(_ *context.T, _ rpc.ServerCall, Payload []byte) ([]byte, error)
// EchoStream returns the payload that it receives via the stream.
EchoStream(*context.T, BenchmarkEchoStreamServerCall) error
}
BenchmarkServerMethods is the interface a server writer implements for Benchmark.
type BenchmarkServerStub ¶
type BenchmarkServerStub interface {
BenchmarkServerStubMethods
// Describe the Benchmark interfaces.
Describe__() []rpc.InterfaceDesc
}
BenchmarkServerStub adds universal methods to BenchmarkServerStubMethods.
func BenchmarkServer ¶
func BenchmarkServer(impl BenchmarkServerMethods) BenchmarkServerStub
BenchmarkServer returns a server stub for Benchmark. It converts an implementation of BenchmarkServerMethods into an object that may be used by rpc.Server.
type BenchmarkServerStubMethods ¶
type BenchmarkServerStubMethods interface {
// Echo returns the payload that it receives.
Echo(_ *context.T, _ rpc.ServerCall, Payload []byte) ([]byte, error)
// EchoStream returns the payload that it receives via the stream.
EchoStream(*context.T, *BenchmarkEchoStreamServerCallStub) error
}
BenchmarkServerStubMethods is the server interface containing Benchmark methods, as expected by rpc.Server. The only difference between this interface and BenchmarkServerMethods is the streaming methods.
type Caveat ¶
type Caveat struct {
Id []byte `protobuf:"bytes,1,req,name=id" json:"id,omitempty"`
ParamVom []byte `protobuf:"bytes,2,req,name=paramVom" json:"paramVom,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*Caveat) GetParamVom ¶
func (*Caveat) ProtoMessage ¶
func (*Caveat) ProtoMessage()
type Certificate ¶
type Certificate struct {
Extension *string `protobuf:"bytes,1,req,name=extension" json:"extension,omitempty"`
PublicKey []byte `protobuf:"bytes,2,req,name=publicKey" json:"publicKey,omitempty"`
Caveats []*Caveat `protobuf:"bytes,3,rep,name=caveats" json:"caveats,omitempty"`
Signature *Signature `protobuf:"bytes,4,req,name=signature" json:"signature,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*Certificate) GetCaveats ¶
func (m *Certificate) GetCaveats() []*Caveat
func (*Certificate) GetExtension ¶
func (m *Certificate) GetExtension() string
func (*Certificate) GetPublicKey ¶
func (m *Certificate) GetPublicKey() []byte
func (*Certificate) GetSignature ¶
func (m *Certificate) GetSignature() *Signature
func (*Certificate) ProtoMessage ¶
func (*Certificate) ProtoMessage()
func (*Certificate) Reset ¶
func (m *Certificate) Reset()
func (*Certificate) String ¶
func (m *Certificate) String() string
type CertificateChain ¶
type CertificateChain struct {
Certificates []*Certificate `protobuf:"bytes,1,rep,name=certificates" json:"certificates,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*CertificateChain) GetCertificates ¶
func (m *CertificateChain) GetCertificates() []*Certificate
func (*CertificateChain) ProtoMessage ¶
func (*CertificateChain) ProtoMessage()
func (*CertificateChain) Reset ¶
func (m *CertificateChain) Reset()
func (*CertificateChain) String ¶
func (m *CertificateChain) String() string
type RpcRequest ¶
type RpcRequest struct {
Suffix *string `protobuf:"bytes,1,req,name=suffix" json:"suffix,omitempty"`
Method *string `protobuf:"bytes,2,req,name=method" json:"method,omitempty"`
NumPosArgs *uint64 `protobuf:"varint,3,req,name=numPosArgs" json:"numPosArgs,omitempty"`
EndStreamArgs *bool `protobuf:"varint,4,req,name=endStreamArgs" json:"endStreamArgs,omitempty"`
Deadline *TimeWireDeadline `protobuf:"bytes,5,req,name=deadline" json:"deadline,omitempty"`
GrantedBlessings *SecurityWireBlessings `protobuf:"bytes,6,req,name=grantedBlessings" json:"grantedBlessings,omitempty"`
TraceRequest *VtraceRequest `protobuf:"bytes,7,req,name=traceRequest" json:"traceRequest,omitempty"`
Language *string `protobuf:"bytes,8,req,name=language" json:"language,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*RpcRequest) GetDeadline ¶
func (m *RpcRequest) GetDeadline() *TimeWireDeadline
func (*RpcRequest) GetEndStreamArgs ¶
func (m *RpcRequest) GetEndStreamArgs() bool
func (*RpcRequest) GetGrantedBlessings ¶
func (m *RpcRequest) GetGrantedBlessings() *SecurityWireBlessings
func (*RpcRequest) GetLanguage ¶
func (m *RpcRequest) GetLanguage() string
func (*RpcRequest) GetMethod ¶
func (m *RpcRequest) GetMethod() string
func (*RpcRequest) GetNumPosArgs ¶
func (m *RpcRequest) GetNumPosArgs() uint64
func (*RpcRequest) GetSuffix ¶
func (m *RpcRequest) GetSuffix() string
func (*RpcRequest) GetTraceRequest ¶
func (m *RpcRequest) GetTraceRequest() *VtraceRequest
func (*RpcRequest) ProtoMessage ¶
func (*RpcRequest) ProtoMessage()
func (*RpcRequest) Reset ¶
func (m *RpcRequest) Reset()
func (*RpcRequest) String ¶
func (m *RpcRequest) String() string
type RpcResponse ¶
type RpcResponse struct {
Error *string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
EndStreamResults *bool `protobuf:"varint,2,req,name=endStreamResults" json:"endStreamResults,omitempty"`
NumPosResults *uint64 `protobuf:"varint,3,req,name=numPosResults" json:"numPosResults,omitempty"`
TraceResponse *VtraceResponse `protobuf:"bytes,4,req,name=traceResponse" json:"traceResponse,omitempty"`
AckBlessings *bool `protobuf:"varint,5,req,name=ackBlessings" json:"ackBlessings,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*RpcResponse) GetAckBlessings ¶
func (m *RpcResponse) GetAckBlessings() bool
func (*RpcResponse) GetEndStreamResults ¶
func (m *RpcResponse) GetEndStreamResults() bool
func (*RpcResponse) GetError ¶
func (m *RpcResponse) GetError() string
func (*RpcResponse) GetNumPosResults ¶
func (m *RpcResponse) GetNumPosResults() uint64
func (*RpcResponse) GetTraceResponse ¶
func (m *RpcResponse) GetTraceResponse() *VtraceResponse
func (*RpcResponse) ProtoMessage ¶
func (*RpcResponse) ProtoMessage()
func (*RpcResponse) Reset ¶
func (m *RpcResponse) Reset()
func (*RpcResponse) String ¶
func (m *RpcResponse) String() string
type SecurityWireBlessings ¶
type SecurityWireBlessings struct {
CertificateChains []*CertificateChain `protobuf:"bytes,1,rep,name=certificateChains" json:"certificateChains,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*SecurityWireBlessings) GetCertificateChains ¶
func (m *SecurityWireBlessings) GetCertificateChains() []*CertificateChain
func (*SecurityWireBlessings) ProtoMessage ¶
func (*SecurityWireBlessings) ProtoMessage()
func (*SecurityWireBlessings) Reset ¶
func (m *SecurityWireBlessings) Reset()
func (*SecurityWireBlessings) String ¶
func (m *SecurityWireBlessings) String() string
type Signature ¶
type Signature struct {
Purpose []byte `protobuf:"bytes,1,req,name=purpose" json:"purpose,omitempty"`
Hash *string `protobuf:"bytes,2,req,name=hash" json:"hash,omitempty"`
R []byte `protobuf:"bytes,3,req,name=r" json:"r,omitempty"`
S []byte `protobuf:"bytes,4,req,name=s" json:"s,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*Signature) GetPurpose ¶
func (*Signature) ProtoMessage ¶
func (*Signature) ProtoMessage()
type TimeDuration ¶
type TimeDuration struct {
Seconds *int64 `protobuf:"varint,1,req,name=seconds" json:"seconds,omitempty"`
Nanos *int64 `protobuf:"varint,2,req,name=nanos" json:"nanos,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*TimeDuration) GetNanos ¶
func (m *TimeDuration) GetNanos() int64
func (*TimeDuration) GetSeconds ¶
func (m *TimeDuration) GetSeconds() int64
func (*TimeDuration) ProtoMessage ¶
func (*TimeDuration) ProtoMessage()
func (*TimeDuration) Reset ¶
func (m *TimeDuration) Reset()
func (*TimeDuration) String ¶
func (m *TimeDuration) String() string
type TimeTime ¶
type TimeTime struct {
Seconds *int64 `protobuf:"varint,1,req,name=seconds" json:"seconds,omitempty"`
Nanos *int32 `protobuf:"varint,2,req,name=nanos" json:"nanos,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*TimeTime) GetSeconds ¶
func (*TimeTime) ProtoMessage ¶
func (*TimeTime) ProtoMessage()
type TimeWireDeadline ¶
type TimeWireDeadline struct {
FromNow *TimeDuration `protobuf:"bytes,1,req,name=fromNow" json:"fromNow,omitempty"`
NoDeadline *bool `protobuf:"varint,2,req,name=noDeadline" json:"noDeadline,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*TimeWireDeadline) GetFromNow ¶
func (m *TimeWireDeadline) GetFromNow() *TimeDuration
func (*TimeWireDeadline) GetNoDeadline ¶
func (m *TimeWireDeadline) GetNoDeadline() bool
func (*TimeWireDeadline) ProtoMessage ¶
func (*TimeWireDeadline) ProtoMessage()
func (*TimeWireDeadline) Reset ¶
func (m *TimeWireDeadline) Reset()
func (*TimeWireDeadline) String ¶
func (m *TimeWireDeadline) String() string
type VtraceAnnotation ¶
type VtraceAnnotation struct {
When *TimeTime `protobuf:"bytes,1,req,name=when" json:"when,omitempty"`
Msg *string `protobuf:"bytes,2,req,name=msg" json:"msg,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*VtraceAnnotation) GetMsg ¶
func (m *VtraceAnnotation) GetMsg() string
func (*VtraceAnnotation) GetWhen ¶
func (m *VtraceAnnotation) GetWhen() *TimeTime
func (*VtraceAnnotation) ProtoMessage ¶
func (*VtraceAnnotation) ProtoMessage()
func (*VtraceAnnotation) Reset ¶
func (m *VtraceAnnotation) Reset()
func (*VtraceAnnotation) String ¶
func (m *VtraceAnnotation) String() string
type VtraceRequest ¶
type VtraceRequest struct {
SpanId []byte `protobuf:"bytes,1,req,name=spanId" json:"spanId,omitempty"`
TraceId []byte `protobuf:"bytes,2,req,name=traceId" json:"traceId,omitempty"`
Flags *int32 `protobuf:"varint,3,req,name=flags" json:"flags,omitempty"`
LogLevel *int32 `protobuf:"varint,4,req,name=logLevel" json:"logLevel,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*VtraceRequest) GetFlags ¶
func (m *VtraceRequest) GetFlags() int32
func (*VtraceRequest) GetLogLevel ¶
func (m *VtraceRequest) GetLogLevel() int32
func (*VtraceRequest) GetSpanId ¶
func (m *VtraceRequest) GetSpanId() []byte
func (*VtraceRequest) GetTraceId ¶
func (m *VtraceRequest) GetTraceId() []byte
func (*VtraceRequest) ProtoMessage ¶
func (*VtraceRequest) ProtoMessage()
func (*VtraceRequest) Reset ¶
func (m *VtraceRequest) Reset()
func (*VtraceRequest) String ¶
func (m *VtraceRequest) String() string
type VtraceResponse ¶
type VtraceResponse struct {
TraceFlags *int32 `protobuf:"varint,1,req,name=traceFlags" json:"traceFlags,omitempty"`
Trace *VtraceTraceRecord `protobuf:"bytes,2,req,name=trace" json:"trace,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*VtraceResponse) GetTrace ¶
func (m *VtraceResponse) GetTrace() *VtraceTraceRecord
func (*VtraceResponse) GetTraceFlags ¶
func (m *VtraceResponse) GetTraceFlags() int32
func (*VtraceResponse) ProtoMessage ¶
func (*VtraceResponse) ProtoMessage()
func (*VtraceResponse) Reset ¶
func (m *VtraceResponse) Reset()
func (*VtraceResponse) String ¶
func (m *VtraceResponse) String() string
type VtraceSpanRecord ¶
type VtraceSpanRecord struct {
Id []byte `protobuf:"bytes,1,req,name=id" json:"id,omitempty"`
Parent []byte `protobuf:"bytes,2,req,name=parent" json:"parent,omitempty"`
Name *string `protobuf:"bytes,3,req,name=name" json:"name,omitempty"`
Start *TimeTime `protobuf:"bytes,4,req,name=start" json:"start,omitempty"`
End *TimeTime `protobuf:"bytes,5,req,name=end" json:"end,omitempty"`
Annotations []*VtraceAnnotation `protobuf:"bytes,6,rep,name=annotations" json:"annotations,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*VtraceSpanRecord) GetAnnotations ¶
func (m *VtraceSpanRecord) GetAnnotations() []*VtraceAnnotation
func (*VtraceSpanRecord) GetEnd ¶
func (m *VtraceSpanRecord) GetEnd() *TimeTime
func (*VtraceSpanRecord) GetId ¶
func (m *VtraceSpanRecord) GetId() []byte
func (*VtraceSpanRecord) GetName ¶
func (m *VtraceSpanRecord) GetName() string
func (*VtraceSpanRecord) GetParent ¶
func (m *VtraceSpanRecord) GetParent() []byte
func (*VtraceSpanRecord) GetStart ¶
func (m *VtraceSpanRecord) GetStart() *TimeTime
func (*VtraceSpanRecord) ProtoMessage ¶
func (*VtraceSpanRecord) ProtoMessage()
func (*VtraceSpanRecord) Reset ¶
func (m *VtraceSpanRecord) Reset()
func (*VtraceSpanRecord) String ¶
func (m *VtraceSpanRecord) String() string
type VtraceTraceRecord ¶
type VtraceTraceRecord struct {
Id []byte `protobuf:"bytes,1,req,name=id" json:"id,omitempty"`
SpanRecord []*VtraceSpanRecord `protobuf:"bytes,2,rep,name=spanRecord" json:"spanRecord,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (*VtraceTraceRecord) GetId ¶
func (m *VtraceTraceRecord) GetId() []byte
func (*VtraceTraceRecord) GetSpanRecord ¶
func (m *VtraceTraceRecord) GetSpanRecord() []*VtraceSpanRecord
func (*VtraceTraceRecord) ProtoMessage ¶
func (*VtraceTraceRecord) ProtoMessage()
func (*VtraceTraceRecord) Reset ¶
func (m *VtraceTraceRecord) Reset()
func (*VtraceTraceRecord) String ¶
func (m *VtraceTraceRecord) String() string
Directories
¶
| Path | Synopsis |
|---|---|
|
Command benchmark runs the benchmark client.
|
Command benchmark runs the benchmark client. |
|
Command benchmarkd runs the benchmark server.
|
Command benchmarkd runs the benchmark server. |