很多业务用 Redis 做了缓存,假如客户端命中的缓存,那还需要先从 Redis 中读取的数据反序列化成对象再序列化成 JSON 给前端吗?
資深大佬 : qwerthhusn 0
比如,用的 Spring Web RestController
@GetMapping("/data") public Data get() { byte[] dataBS = redis.get("key"); if (dataBS == null) { return getFromDB(); } else { // 可能用了 Kryo 或者 FST 或者 Protobuf 等序列化协议 Data data = deserialize(dataBS, Data.class); return data; } }
总感觉可以直接存 JSON,然后从 Redis 中直接取出 byte[]返回给客户端,省掉一次反序列化和序列化的流程。但是这样写的感觉可读性不强,而且写法也比较麻烦。
请问大佬们,一般遇到这种情形,你们都是咋做的?
大佬有話說 (6)