golang 这种语言相对于 php 有个好处是,不用每次请求都重复一些不必要的初始化操作,golang 进程开启之后,即使请求结束,相关的资源也会驻留在内存中。
所以我们可以把一些不需要重复初始化的东西放到这里面,比如:mongo 的连接
package utils
import (
"errors"
)
var container = make(map[string]interface{})
func Set(name string, value interface{}) {
container[name] = value
}
func Get(name string) (interface{}, error) {
if v, ok := container[name]; ok {
return v, nil
} else {
return nil, errors.New("key not exist")
}
}