Help us shape the future of Go! Take the 2026 Go Developer Survey

cache

package
v3.10.13 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

README

Registry Cache

Cache is a library that provides a caching layer for the go-micro registry.

If you're looking for caching in your microservices use the selector.

Interface

// Cache is the registry cache interface
type Cache interface {
	// embed the registry interface
	registry.Registry
	// stop the cache watcher
	Stop()
}

Usage

import "github.com/micro/go-micro/registry/cache"

# create a new cache
c := cache.New(registry)

# get a service from the cache
services, _ := c.GetService("helloworld")

Documentation

Overview

Package cache provides a registry cache

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Copy

func Copy(current []*registry.Service) []*registry.Service

Copy makes a copy of services

func CopyService

func CopyService(service *registry.Service) *registry.Service

CopyService make a copy of service

func Merge

func Merge(olist []*registry.Service, nlist []*registry.Service) []*registry.Service

Merge merges two lists of services and returns a new copy

func Remove

func Remove(old, del []*registry.Service) []*registry.Service

Remove removes services and returns a new copy

Types

type Cache

type Cache interface {
	// embed the registry interface
	registry.Registry
	// stop the cache watcher
	Stop()
}

Cache is the registry cache interface

func New

func New(r registry.Registry, opts ...Option) Cache

New returns a new cache

type Option

type Option func(o *Options)

func WithTTL

func WithTTL(t time.Duration) Option

WithTTL sets the cache TTL

type Options

type Options struct {
	// TTL is the cache TTL
	TTL time.Duration
}

Jump to

Keyboard shortcuts

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