1、需求背景
消金行业,助贷公司。
百信银行的LPR利率查询接口时间只到2022年3月,且其它合作机构LPR利率查询接口不可用。
需求分析结果是,所有渠道放款前都会调用LPR利率查询接口,其中部分资金方会校验LPR利率,影响范围较大。
2、技术方案
新增LPR利率查询接口,老接口保留,防止上线后新接口有问题,可以继续使用老接口放款,不影响公司放款业务。
具体实现方案, order-batch应用job定时跑批拉取银行发布的LPR利率文件,解析入库。loki应用放款前调datainquiry数据库查询服务查询每日解析入库的最新LPR利率,然后发往资金方申请放款。
3、测试结果
测试环境,资金方报错信息:
post state:200, response:{"code":"90001","desc":"1802063:LPR浮动利率计算错误","encrypted":false,"success":false,"timestamp":1661247736790}
一开始以为是测试环境的LPR利率跟资金方的不一致造成,同步资金方测试环境的LPR利率后仍旧报错。经过跟开发沟通LPR浮动利率计算公式:浮动利率=资金成本-基准利率,发现问题出在资金成本上,测试环境资金成本是9%,观察生产上配置的资金成本是8.5%,同步生产配置后再次放款成功。
4、线上问题
上线后需要观察放款失败的原因,是否有单子是因为LPR利率的问题放款失败。
5、复盘反思
这个bug是测试环境的配置错误产生的,深究其原因是由于生产上调整了配置,但是没有同步到测试环境,也没有专门通知过测试人员。
每次接入一个新的资金方,测试会根据需求添加测试环境的配置,测试环境测试通过后,上线的时候项目经理直接根据测试环境的配置在生产上维护一套相同的配置。时间一久,如果调整了生产配置,或者测试环境配置不知道被谁改了,或者切换到新的测试环境会缺失配置,这个问题直接会影响到测试质量和测试效率。为了处理这个问题,组织开发,测试,项目经理等讨论,初步定下的方案是新增2个功能,一是可以从生产上同步配置到测试环境,二是测试环境之间可以相互同步配置。这样对于迭代需求为了保障测试环境配置是对的,提测后测试环境部署可以从生产上同步配置到测试环境来,直接覆盖掉测试环境的配置,保障生产配置和测试环境配置的一致性。