Golang 中将结构序列化和反序列化为字符串的最佳方式(完整性和性能)是什么,反之亦然?


例如,如果我有这个结构:


struct Session {

   Properties map[string]interface{}

   Permissions []int64

}

我想将它存储在Redis 上并取回它。我试过保存,int 和 string,没问题,但是如何存储 struct 对象呢?


conn := redisConnectors.Get()


// set example


_, err := conn.Do(`SETEX`, `uid_key`, EXPIRE_SEC, user_id)

_, err = conn.Do(`SETEX`, `email_key`, EXPIRE_SEC, login_email)


// get example


user_id, err := redis.Int64(conn.Do(`GET`, `uid_key`))

login_email, err := redis.String(conn.Do(`GET`, `email_key`))