doucigua0278 2012-11-07 06:50
浏览 33
已采纳

在Go中将对象存储在GAE的内存缓存中

I want to store an object in GAE's memcache using Go. The gae documentation only shows how to store a []byte here: https://developers.google.com/appengine/docs/go/memcache/overview

Of course there are general ways to serialize an object into []byte, by which my task could be accomplished. But by reading the memcache reference, I found there is an "Object" in the memcache Item:

// Object is the Item's value for use with a Codec.
Object interface{}

That seems to be a built-in mechanic to store an object in memcache. However, the gae documentation did not provide a sample code.

Could anyone please show me an example? Thanks in advance

  • 写回答

1条回答 默认 最新

  • douxu0550 2012-11-07 07:22
    关注

    OK, I just figured it out my self. The memcache pkg has two built-in Codec: gob and json. Just use one of them (or of course one can create his own Codec):

    var in, out struct {I int;}
    
    // Put in into memcache
    in.I = 100 
    item := &memcache.Item {
       Key: "TestKey",
       Object: in, 
    }   
    memcache.Gob.Set(c, item)  // error checking omitted for convenience
    
    // retrieve the value
    memcache.Gob.Get(c, "TestKey", &out)
    fmt.Fprint(w, out)  // will print {100}
    

    Thanks all

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题