键值设计

key名设计

  1. 【建议】: 可读性和可管理性

    以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id

    ugc:video:1

  2. 【建议】:简洁性

    保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:

    user:{uid}:friends:messages:{mid}

    简化为

    u:{uid}:fr:m:{mid}

  3. 【强制】:不要包含特殊字符

    反例:包含空格、换行、单双引号以及其他转义字符

value设计

阅读全文 »

前言

今天在项目中遇到了一个Gson转换数字后会变为Double类型引起的Bug,特此记录一下。

背景是这样的,我们对于前端请求,有一个公共处理Controller,并根据请求里的接口名称将其分发给其他处理类(Controller)。

因为每个处理类的请求类Req和返回Res是不同的,但是它们的响应code和原因是可以提取的,因此拿到前端数据后,我们后台会处理并返回数据。

阅读全文 »

原文链接

前言

Java 12(发布于2019年3月19日)是JDK的最新版本。让我们看看它为开发人员和架构师带来的新特性和改进。

正文

阅读全文 »