本文整理汇总了Golang中github.com/astaxie/beego/cache.NewCache函数的典型用法代码示例。如果您正苦于以下问题:Golang NewCache函数的具体用法?Golang NewCache怎么用?Golang NewCache使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewCache函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: NewCache
func NewCache(config CacheConfig) (Cache, error) {
if config.Driver == "" {
return nil, nil
} else if config.Driver == "memory" {
var data struct {
Interval int `json:"interval,omitempty"`
}
data.Interval = config.GcInterval
configString, err := json.Marshal(data)
if err != nil {
return nil, err
}
cacheInner, err := cache.NewCache("memory", string(configString))
if err != nil {
return nil, err
}
return &cacheImplement{
store: cacheInner,
saveprefix: config.SavePrefix,
}, nil
} else if config.Driver == "redis" {
var data struct {
Key string `json:"key"`
Conn string `json:"conn"`
Password string `json:"password,omitempty"`
}
if config.SavePrefix == "" {
return nil, errors.New("invalid config.SavePrefix is empty")
}
data.Key = config.SavePrefix
configArray := Explode(config.SavePath, ",")
if len(configArray) == 0 {
return nil, errors.New("invalid config.SavePath " + config.SavePath)
}
data.Conn = configArray[0]
if len(configArray) >= 3 {
data.Password = configArray[2]
}
configString, err := json.Marshal(data)
if err != nil {
return nil, err
}
cacheInner, err := cache.NewCache("redis", string(configString))
if err != nil {
return nil, err
}
return &cacheImplement{
store: cacheInner,
saveprefix: config.SavePrefix,
}, nil
} else {
return nil, errors.New("invalid cache config " + config.Driver)
}
}
开发者ID:fishedee,项目名称:fishgo,代码行数:54,代码来源:util_cache.go
示例2: Initialize
func Initialize() {
var err error
beego.Info("thisi s is s ")
var cac cache.Cache
cac, err = cache.NewCache("memory", `{"interval":360}`)
cachemanager.Cache = cac
// session settings
beego.BConfig.WebConfig.Session.SessionOn = true
//beego.BConfig.WebConfig.Session.SessionProvider = Cfg.MustValue("session", "session_provider", "file")
//beego.BConfig.WebConfig.Session.SessionProviderConfig = Cfg.MustValue("session", "session_path", "sessions")
//beego.BConfig.WebConfig.Session.SessionName = Cfg.MustValue("session", "session_name", "wetalk_sess")
//beego.BConfig.WebConfig.Session.SessionCookieLifeTime = Cfg.MustInt("session", "session_life_time", 0)
//beego.BConfig.WebConfig.Session.SessionGCMaxLifetime = Cfg.MustInt64("session", "session_gc_time", 86400)
//load custom configurations
loadConfig()
//disable live reload for db connections
PostgresConnection = beego.AppConfig.DefaultString(beego.BConfig.RunMode+"::"+"pg_conn", "user=postgres password=root dbname=eq sslmode=disable")
PostgresMigrateConnection = beego.AppConfig.DefaultString(beego.BConfig.RunMode+"::"+"pg_migrate", "postgres://postgres:[email protected]:5432/test?sslmode=disable")
// cache system
Captcha = captcha.NewCaptcha("/captcha/", cac)
Captcha.FieldIDName = "CaptchaId"
Captcha.FieldCaptchaName = "Captcha"
settingCompress()
settingLocales()
//watch conf files change
configWatcher()
if err != nil {
beego.Error(err)
}
}
开发者ID:thanzen,项目名称:identity,代码行数:33,代码来源:setting.go
示例3: InitFilecache
//初始化文件缓存,配置参数如下
//
// filecache_dir 缓存文件目录
//
// filecache_suffix 缓存文件后缀(.cache)
//
// filecache_level 目录层级(2)
//
// filecache_expire 过期时间(3600秒)
func InitFilecache() (cache.Cache, error) {
if beego.BConfig.RunMode == "dev" {
beego.Info("initiating file cache")
}
filecache_dir := beego.AppConfig.DefaultString("filecache_dir", "")
filecache_suffix := beego.AppConfig.DefaultString("filecache_suffix", ".cache")
filecache_level := beego.AppConfig.DefaultInt("filecache_level", 2)
filecache_expire := beego.AppConfig.DefaultInt("filecache_expire", 3600)
if filecache_dir == "" {
panic("filecache_dir is not set")
}
info, err := os.Stat(filecache_dir)
if err != nil && !os.IsExist(err) {
if err := os.MkdirAll(filecache_dir, 777); err != nil {
panic(fmt.Sprintf("%s not exist and can not be created\n%v", filecache_dir, err))
}
}
if !info.IsDir() {
panic(fmt.Sprintf("%s is not a directory", filecache_dir))
}
if err := syscall.Access(filecache_dir, syscall.O_RDWR); err != nil {
panic(fmt.Sprintf("%s is not accessable\n%v", filecache_dir, err))
}
return cache.NewCache("file", fmt.Sprintf(`{"CachePath":"%s","FileSuffix":"%s","DirectoryLevel":%d,"EmbedExpiry":%d}`, filecache_suffix, filecache_suffix, filecache_level, filecache_expire))
}
开发者ID:sillydong,项目名称:goczd,代码行数:35,代码来源:init.go
示例4: init
func init() {
var err error
Cache, err = cache.NewCache("memory", `{"interval":720}`)
if err != nil {
log.Errorf("Failed to initialize cache, error:%v", err)
}
}
开发者ID:vmware,项目名称:harbor,代码行数:7,代码来源:cache.go
示例5: LoadConfig
func LoadConfig() {
redisServer := beego.AppConfig.String("redis_resource")
redisServer = "{\"conn\":\"" + redisServer + "\"}"
store, err := cache.NewCache("redis", redisServer)
if err != nil {
log.Panic("缓存出错" + err.Error())
}
Captcha = captcha.NewWithFilter("/captcha/", store)
driverName := beego.AppConfig.String("driverName")
dataSource := beego.AppConfig.String("dataSource")
maxIdle, _ := beego.AppConfig.Int("maxIdle")
maxOpen, _ := beego.AppConfig.Int("maxOpen")
orm.RegisterDriver("mysql", orm.DR_MySQL)
// set default database
err = orm.RegisterDataBase("default", driverName, dataSource, maxIdle, maxOpen)
if err != nil {
beego.Error(err)
}
orm.RunCommand()
err = orm.RunSyncdb("default", false, false)
if err != nil {
beego.Error(err)
}
SocialAuthInit()
config.InitConfig()
}
开发者ID:ming-hai,项目名称:account,代码行数:31,代码来源:setting.go
示例6: NewCache
func NewCache(name, config string) (*Cache, error) {
adp, err := bgcache.NewCache(name, config)
if err != nil {
return nil, err
}
return &Cache{adapter: adp, name: name}, nil
}
开发者ID:artwebs,项目名称:aogo,代码行数:7,代码来源:Cache.go
示例7: TestRedisCache
func TestRedisCache(t *testing.T) {
bm, err := cache.NewCache("redis", `{"conn": "127.0.0.1:6379"}`)
if err != nil {
t.Error("init err")
}
if err = bm.Put("astaxie", 1, 10); err != nil {
t.Error("set Error", err)
}
if !bm.IsExist("astaxie") {
t.Error("check err")
}
time.Sleep(10 * time.Second)
if bm.IsExist("astaxie") {
t.Error("check err")
}
if err = bm.Put("astaxie", 1, 10); err != nil {
t.Error("set Error", err)
}
if v, _ := redis.Int(bm.Get("astaxie"), err); v != 1 {
t.Error("get err")
}
if err = bm.Incr("astaxie"); err != nil {
t.Error("Incr Error", err)
}
if v, _ := redis.Int(bm.Get("astaxie"), err); v != 2 {
t.Error("get err")
}
if err = bm.Decr("astaxie"); err != nil {
t.Error("Decr Error", err)
}
if v, _ := redis.Int(bm.Get("astaxie"), err); v != 1 {
t.Error("get err")
}
bm.Delete("astaxie")
if bm.IsExist("astaxie") {
t.Error("delete err")
}
//test string
if err = bm.Put("astaxie", "author", 10); err != nil {
t.Error("set Error", err)
}
if !bm.IsExist("astaxie") {
t.Error("check err")
}
if v, _ := redis.String(bm.Get("astaxie"), err); v != "author" {
t.Error("get err")
}
// test clear all
if err = bm.ClearAll(); err != nil {
t.Error("clear all err")
}
}
开发者ID:4eek,项目名称:beego,代码行数:60,代码来源:redis_test.go
示例8: InitMemorycache
//初始化内存缓存,配置参数如下
//
// memory_gc_interval 内存回收周期(60秒)
func InitMemorycache() (cache.Cache, error) {
if beego.BConfig.RunMode == "dev" {
beego.Info("initiating memory cache")
}
memory_interval := beego.AppConfig.DefaultInt("memory_gc_interval", 60)
return cache.NewCache("memory", fmt.Sprintf(`{"interval":%d}`, memory_interval))
}
开发者ID:sillydong,项目名称:goczd,代码行数:11,代码来源:init.go
示例9: init
func init() {
log.Println("---------- Context init called.-----------------")
AppCtx = &AppContext{}
AppCtx.Sitename = beego.AppConfig.String("sitename")
// cache init
APPCache, _ = cache.NewCache("memory", `{"interval":3600}`)
}
开发者ID:sndnvaps,项目名称:gooa,代码行数:8,代码来源:context.go
示例10: initRedis
func initRedis() {
var err error
cc, err = cache.NewCache("redis", `{"conn":"`+beego.AppConfig.String("redis_host")+`"}`)
if err != nil {
beego.Info(err)
}
}
开发者ID:KarlZeo,项目名称:blog-1,代码行数:8,代码来源:cache.go
示例11: initMemcache
func initMemcache() {
var err error
cc, err = cache.NewCache("memcache", `{"conn":"`+beego.AppConfig.String("memcache_host")+`"}`)
if err != nil {
beego.Info(err)
}
}
开发者ID:dw250100785,项目名称:blog-1,代码行数:9,代码来源:cache.go
示例12: InitRediscache
//初始化redis缓存,配置参数如下
//
// rediscache_host redis主机(127.0.0.1)
//
// rediscache_port redis端口(6379)
func InitRediscache() (cache.Cache, error) {
if beego.BConfig.RunMode == "dev" {
beego.Info("initiating redis cache")
}
rediscache_host := beego.AppConfig.DefaultString("rediscache_host", "127.0.0.1")
rediscache_port := beego.AppConfig.DefaultString("rediscache_port", "6379")
return cache.NewCache("redis", fmt.Sprintf(`{"conn":"%s:%s"}`, rediscache_host, rediscache_port))
}
开发者ID:sillydong,项目名称:goczd,代码行数:14,代码来源:init.go
示例13: InitMemcache
//初始化memcache缓存,配置参数如下
//
// memcache_host memcache主机(127.0.0.1)
//
// memcache_port memcache端口(11211)
func InitMemcache() (cache.Cache, error) {
if beego.BConfig.RunMode == "dev" {
beego.Info("initiating memcache")
}
memcache_host := beego.AppConfig.DefaultString("memcache_host", "127.0.0.1")
memcache_port := beego.AppConfig.DefaultString("memcache_port", "11211")
return cache.NewCache("memcache", fmt.Sprintf(`{"conn":"%s:%s"`, memcache_host, memcache_port))
}
开发者ID:sillydong,项目名称:goczd,代码行数:14,代码来源:init.go
示例14: init
func init() {
var err error
Cache, err = cache.NewCache("memory", `{"interval":720}`)
if err != nil {
log.Errorf("Failed to initialize cache, error:%v", err)
}
endpoint = os.Getenv("REGISTRY_URL")
username = "admin"
}
开发者ID:yaolingling,项目名称:harbor,代码行数:10,代码来源:cache.go
示例15: GetRedisInstance
func GetRedisInstance() cache.Cache {
if redisBase == nil {
redisInst, err := cache.NewCache("redis", `{"conn":"127.0.0.1:6379", "key":"beecacheRedis"}`)
if err != nil {
log.Println(err)
}
redisBase = &RedisBase{RedisInst: redisInst}
}
return redisBase.RedisInst
}
开发者ID:idle-tmac,项目名称:tmac,代码行数:10,代码来源:redis_base.go
示例16: initCache
// 初始化Cache
func initCache() error {
var err error
// Cache 第三方引擎
helper.GlobalCache, err = cache.NewCache(CACHE_ENGINE_REDIS, "{\"conn\": \""+models.RedisAddress+"\"}")
if err != nil {
return err
}
return nil
}
开发者ID:sevenzoe,项目名称:FiveMusketeers,代码行数:12,代码来源:base.go
示例17: init
func init() {
var err error
Cache, err = cache.NewCache("memory", `{"interval":720}`)
if err != nil {
log.Errorf("Failed to initialize cache, error:%v", err)
}
endpoint = os.Getenv("REGISTRY_URL")
username = "admin"
repositoryClients = make(map[string]*registry.Repository, 10)
}
开发者ID:CodingDance,项目名称:harbor,代码行数:11,代码来源:cache.go
示例18: Get
func (this *MainController) Get() {
// c,_ := cache.NewCache("file", `{"CachePath":"./cache","FileSuffix":".cache","DirectoryLevel":2,"EmbedExpiry":120}`)
c,_ := cache.NewCache("memory", `{"interval":60}`)
tmp:=c.Get("hello")
this.dump(tmp)
if(tmp != nil){
this.dump(tmp);
}else{
c.Put("hello",time.Now(),2)
}
}
开发者ID:trigrass2,项目名称:crm,代码行数:11,代码来源:cache.go
示例19: InitCache
//初始化缓存
func InitCache() {
//初始化权限配置缓存
var err error
Cache_All, err = cache.NewCache("memory", `{"interval":60}`)
if err != nil {
//抛出异常
Debug(err)
return
}
setCacheAdminConfigData()
}
开发者ID:mu2611,项目名称:geekxb,代码行数:15,代码来源:Common_Cache.go
示例20: init
func init() {
orm.RegisterDriver("sqlite", orm.DR_Sqlite)
// 参数4(可选) 设置最大空闲连接
// 参数5(可选) 设置最大数据库连接 (go >= 1.2)
maxIdle := 30
maxConn := 30
orm.RegisterDataBase("default", "sqlite3", "db/ifcdb.db", maxIdle, maxConn)
// 需要在init中注册定义的model
orm.RegisterModel(new(VItemList), new(OnLineActive))
//设定一个缓存,保存最初始的ItemList,避免每次打开主页就去读取数据库
bm, _ = cache.NewCache("memory", `{"interval":60}`)
}
开发者ID:tonypublic,项目名称:IFCInfoSys,代码行数:15,代码来源:models.go
注:本文中的github.com/astaxie/beego/cache.NewCache函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论