本文摘自php中文网,作者(*-*)浩,侵删。

go-cache 是一个基于内存的、高速的,存储k-v格式的缓存工具。它适用于运行在单台机器上的应用程序,可以存储任何数据类型的值,并可以被多个goroutine安全地使用。 (推荐学习:go)
虽然go-cache 不打算用作持久数据存储,但是可以将整个缓存数据保存到文件(或任何io.Reader/Writer)中,并且能快速从中指定数据源加载,快速恢复状态。
Demo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | package main
import (
"log"
"time"
"github.com/patrickmn/go-cache"
)
func main(){
c := cache.New(30*time.Second, 10*time.Second)
c.Set("Title", "Spring Festival", cache.DefaultExpiration)
value, found := c.Get("Title")
if found {
log.Println("found:", value)
} else {
log.Println("not found")
}
time.Sleep(60*time.Second)
log.Println("sleep 60s...")
value, found = c.Get("Title")
if found {
log.Println("found:", value)
} else {
log.Println("not found")
}
}
|
output
阅读剩余部分
相关阅读 >>
手撸golang go与微服务 chatserver之3 压测与诊断
golang基础数据类型-浮点型
golang基础数据类型-整型
go 1.15 版本的优化清单【总结】
golang中使用json时区分空字段和未设置字段的方法
手把手带你进行golang环境配置
使用 goroutine 和 chanel 快速实现并发和排队
手撸golang 行为型设计模式 责任链模式
最长公共子序列
go 语言规范 - 编码风格篇
更多相关阅读请进入《golang》频道 >>
老貘
一个与时俱进的Go编程知识库。
转载请注明出处:木庄网络博客 » golang-cache是全局吗