circuitbreaker

package
v3.0.16 Latest Latest
Warning

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

Go to latest
Published: Feb 18, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrBreaker = errors.New("service breaked")

ErrBreaker for circuit breaker.

Functions

This section is empty.

Types

type CircuitBreaker

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

CircuitBreaker plugin for hprose.

func New

func New(options ...Option) *CircuitBreaker

New returns a CircuitBreaker instance.

func (*CircuitBreaker) IOHandler

func (cb *CircuitBreaker) IOHandler(ctx context.Context, request []byte, next core.NextIOHandler) (response []byte, err error)

IOHandler for CircuitBreaker.

func (*CircuitBreaker) InvokeHandler

func (cb *CircuitBreaker) InvokeHandler(ctx context.Context, name string, args []interface{}, next core.NextInvokeHandler) (result []interface{}, err error)

InvokeHandler for CircuitBreaker.

func (*CircuitBreaker) MockService

func (cb *CircuitBreaker) MockService() MockService

MockService property of CircuitBreaker.

func (*CircuitBreaker) RecoverTime

func (cb *CircuitBreaker) RecoverTime() time.Duration

RecoverTime property of CircuitBreaker.

func (*CircuitBreaker) Threshold

func (cb *CircuitBreaker) Threshold() uint64

Threshold property of CircuitBreaker.

type MockService

type MockService = func(ctx context.Context, name string, args []interface{}) (result []interface{}, err error)

MockService for circuit breaker.

type Option

type Option func(*CircuitBreaker)

Option for CircuitBreaker.

func WithMockService

func WithMockService(mockService MockService) Option

WithMockService returns a mockService Option for CircuitBreaker.

func WithRecoverTime

func WithRecoverTime(recoverTime time.Duration) Option

WithRecoverTime returns a recoverTime Option for CircuitBreaker.

func WithThreshold

func WithThreshold(threshold uint64) Option

WithThreshold returns a threshold Option for CircuitBreaker.

Jump to

Keyboard shortcuts

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