1# 上来就是一个例子
//张三、李四、王二麻同年入伍,还是老乡;一天,他们的父亲来到军营门口。。。
package main
import (
"context"
"errors"
"fmt"
"log"
"net/http"
"github.com/golang/groupcache"
)
const (
ReqPort = "9000" // 对外提供cache服务端口
groupPort = "9090" // cache集群内部通信端口
groupName = "personsrole_cache" // 全局唯一
)
//相当于DB
var imitateDB = map[string]string{
"张三": "指导员",
"李四": "班长",
"王二麻": "副班长",
}
//配置数据源:当cache miss之后,用来执行的load data方法
func getterFunc(ctx context.Context, key string, dest groupcache.Sink) (err error) {
log.Println("from DB: looking up", key)
v, ok := imitateDB[key]
if <