背景
项目运行4年,数据量较大,现平台查询数据较慢,因此决定重构系统,采用Sharding-Sphere进行数据分表,提升查询效率,半年数据存入一张表内,之前测试的多为单表业务,分表测试的时候还是有很多地方没考虑到,因此本博文作为项目经验教训记录。
问题
一、平台上设置默认时间段,即3个月,前端自动算出起-止时间,传与后台,后台根据传输的时间判断具体查询某张表,前端推算3个月的时候,直接自然月-3,导致算出了错误的开始时间,如当前月份为5.30,月份-3,则算出开始时间为2.30,传给后台的时间段则为5.30-2.30,实际上2月并无30号,导致定位查询表错误,平台报错
总结:测试时,需要构造异常月份数据,如2.30、2.31等。
二、查看某条单据的详情时,前端需要传递起-止时间,后台根据传输的时间判断具体查询某张表,列表上搜索的时间端为2020/3/20-2020/5/20,且选择该时间段的单据查看详情,此时前端传递的时间应该是2020/3/20-2020/5/20,但是前端传递成了当前日期-前3月,导出查看详情报错。
总结:测试时,需要查看除当前默认查询时间外的数据详情。
三、测试统计数据时,发现页面上展示的数据值与数据库实际统计数据不一致,后经过核查,发现开发在代码中编写的sql语句使用了ifnull函数,后将ifnull函数去掉,统计数据正确
总结:sharding-jdbc不支持ifnull的写法
最后
以上就是拼搏白猫最近收集整理的关于项目使用Sharding-Sphere分表测试经验总结背景问题的全部内容,更多相关项目使用Sharding-Sphere分表测试经验总结背景问题内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复