 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package registry is service registry library, supports etcd, consul and nacos.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Discovery ¶
type Discovery interface {
	// GetService return the service instances in memory according to the service name.
	GetService(ctx context.Context, serviceName string) ([]*ServiceInstance, error)
	// Watch creates a watcher according to the service name.
	Watch(ctx context.Context, serviceName string) (Watcher, error)
}
    Discovery is service discovery.
type Registry ¶
type Registry interface {
	// Register the registration.
	Register(ctx context.Context, service *ServiceInstance) error
	// Deregister the registration.
	Deregister(ctx context.Context, service *ServiceInstance) error
}
    Registry is service registrar.
type ServiceInstance ¶
type ServiceInstance struct {
	// ID is the unique instance ID as registered.
	ID string `json:"id"`
	// Name is the service name as registered.
	Name string `json:"name"`
	// Version is the version of the compiled.
	Version string `json:"version"`
	// Metadata is the kv pair metadata associated with the service instance.
	Metadata map[string]string `json:"metadata"`
	// Endpoints is endpoint addresses of the service instance.
	// schema:
	//   http://127.0.0.1:8000?isSecure=false
	//   grpc://127.0.0.1:9000?isSecure=false
	Endpoints []string `json:"endpoints"`
}
    ServiceInstance is an instance of a service in a discovery system.
func NewServiceInstance ¶
func NewServiceInstance(id string, name string, endpoints []string, opts ...Option) *ServiceInstance
NewServiceInstance creates a new instance
type Watcher ¶
type Watcher interface {
	// Next returns services in the following two cases:
	// 1.the first time to watch and the service instance list is not empty.
	// 2.any service instance changes found.
	// if the above two conditions are not met, it will block until context deadline exceeded or canceled
	Next() ([]*ServiceInstance, error)
	// Stop close the watcher.
	Stop() error
}
    Watcher is service watcher.
       Directories
      ¶
      Directories
      ¶
    
    | Path | Synopsis | 
|---|---|
| Package consul is registered as a service using consul. | Package consul is registered as a service using consul. | 
| Package etcd is registered as a service using etcd. | Package etcd is registered as a service using etcd. | 
| Package nacos is registered as a service using nacos. | Package nacos is registered as a service using nacos. | 
 Click to show internal directories. 
   Click to hide internal directories.