当前位置: 首页 > news >正文

wordpress实例站wordpress底部 社交

wordpress实例站,wordpress底部 社交,电商网站开发视频,椒江做阿里巴巴网站的公司golang一个轻量级基于内存的kv存储或缓存 go-cache是一个轻量级的基于内存的key:value 储存组件#xff0c;类似于memcached#xff0c;适用于在单机上运行的应用程序。 它的主要优点是#xff0c;本质上是一个具有过期时间的线程安全map[string]interface{}。interface的结…golang一个轻量级基于内存的kv存储或缓存 go-cache是一个轻量级的基于内存的key:value 储存组件类似于memcached适用于在单机上运行的应用程序。 它的主要优点是本质上是一个具有过期时间的线程安全map[string]interface{}。interface的结构决定了它不需要序列化。基于内存的特性决定了其不需要网络传输其内容因此就不存在网络耗时。 在使用时,一般都是将go-cache作为数据缓存来使用而不是持久性的数据存储。对于停机后快速恢复的场景go-cache支持将缓存数据保存到文件恢复时从文件中load数据加载到内存。 go-cache广泛使用在go语言编程中适合在单机上存储键值对形式的内存缓存。 github上地址为: https://github.com/patrickmn/go-cache 它在并发的时候线程安全(读写锁) map[string]interface{} 过期时间 来作为go的本地化存储。 这也是他的三大特性 线程安全通过读写锁支持多个协程并发访问不需要序列化键值对形式任意值类型map[string]interface{}自定义每个key的过期时间 cache基本使用 安装go-cache go get github.com/patrickmn/go-cache创建一个go文件例如cache_demo.go 内容如下 package mainimport (fmtgithub.com/patrickmn/go-cachetime )func main() {// 初始化cache 默认过期时间设置为5*time.Minute扫描过期key的间隔时间10*time.Minutec : cache.New(5*time.Minute, 10*time.Minute)// 设置为默认过期时间即New时设置的时间5*time.Minutec.Set(foo, bar, cache.DefaultExpiration)// 设置为不过期c.Set(baz, 42, cache.NoExpiration)// 设置指定过期时间为100秒c.Set(cache, 100, time.Second*3)// Get the string associated with the key foo from the cachefoo, found : c.Get(foo)if found {fmt.Println(foo)}// 验证过期-time.After(5 * time.Second)cacheRes, found : c.Get(cache)if found {fmt.Println(cacheRes)} else {fmt.Println(cache not found)}// 因为value是interface{}类型所以如果需要存入的类型需要断言var fooValue stringif x, ok : c.Get(foo); ok {fooValue x.(string)}fmt.Println(fooValue:, fooValue)//对于结构体存储一个指针,可以有一个更好的性能c.Set(MyStruct, MyStruct{Name: gary,Age: 18,}, cache.DefaultExpiration)if x, ok : c.Get(MyStruct); ok {res : x.(*MyStruct)fmt.Println(MyStruct:, res)}// 删除keyc.Delete(foo)if fooRes, ok : c.Get(foo); ok {fmt.Println(after delete, fooRes)} else {fmt.Println(after delete not found foo)} }type MyStruct struct {Name stringAge int }cache封装 项目中定义一个cache包所有缓存方法封装到cache包里外部直接调用 package cacheimport (github.com/patrickmn/go-cachetime )var c *cache.Cachefunc init() {//创建一个默认过期时间为5分钟的缓存并且//每10分钟清除一次过期项目c cache.New(5*time.Minute, 10*time.Minute) }// 缓存保存 默认的过期时间 func SetDefaultExpire(key string, value interface{}) {c.Set(key, value, cache.DefaultExpiration) }// 缓存放入 不过期 func SetNoExpire(key string, value interface{}) {c.Set(key, value, cache.NoExpiration) }// 缓存放入 设置过期时间 func SetExpire(key string, value interface{}, t time.Duration) {c.Set(key, value, t) }// 缓存获取 func Get(key string) (interface{}, bool) {return c.Get(key) }// 删除缓存 func Delete(key string) {c.Delete(key) } 参考链接 https://github.com/patrickmn/go-cache https://www.jianshu.com/p/1ba4d429d3d3 https://www.cnblogs.com/Moon-Light-Dream/p/12494683.html
http://www.w-s-a.com/news/214979/

相关文章:

  • 达人设计网官方网站建筑效果图网站有哪些
  • 网站定制哪家快建筑室内设计网
  • 网站创建方案论文旅游网站的设计与制作html
  • 网站建设的数据导入导出开发小程序需要多少钱费用
  • 局网站建设进入前十名wordpress user role editor
  • 网站托管如何收费搜一下百度
  • 中国建设劳动协会网站wordpress 区块链媒体
  • 网站开源是什么意思西安做网站科技有限公司
  • 自己怎么用h5做网站肇庆seo
  • 长沙网站seo优化公司东莞企业官方网站建设
  • 网站个人备案材料北京网站推广价格
  • 百度做任务的网站电子工程网网站
  • 中介订制网站开发玉溪网站建设设计
  • 免费网站免费无遮挡手机页面设计软件
  • 网站建设需求规格说明书中山模板建站公司
  • wordpress get值网站建设 seo sem
  • 网站建设微信开发工厂代加工平台
  • 厦门 网站建设 公司哪家好asp.net 创建网站
  • 专业北京网站建设凡科网做网站怎么样
  • 金富通青岛建设工程有限公司网站浙江省住建厅四库一平台
  • 有搜索引擎作弊的网站企业建设H5响应式网站的5大好处6
  • 是做网站编辑还是做平面设计seo外包公司接单
  • 做性的网站有哪些苏州专业网站设计制作公司
  • 陵水网站建设友创科技十大优品店排名
  • 想换掉做网站的公司简要说明网站制作的基本步骤
  • 国企公司网站制作wordpress 浮动定位
  • 网站网页直播怎么做的企业网站建设推荐兴田德润
  • 网站建设熊猫建站厦门seo全网营销
  • 扁平网站设计seo是什么岗位的缩写
  • 工商企业网站群晖配置wordpress 80端口