工作心得之接口数据同步

     在开发过程中避免不了调用其他第三方接口,获取数据或者同步数据,以下是在同步数据到第三接口时踩过的坑和需要注意的一些事,前车之鉴,希望通过这次总结可以避免后续继续踩坑。

      本次同步数据主要采用resetful接口调用第三方接口把本系统的业务数据同步到第三接口,基本流程如下:

       1、书写调用第三方接口的工具类,通过该工具类获取第三方接口的token

       2、书写同步业务数据接口,把对应的业务数据传到第三方平台

       3、把同步的数据和第三方数据返回的对应关系存储在本地数据库的关联关系表。

以上就是本次数据同步的基本流程了,咋一看如此简单,但是就是如此简单的流程却踩了一个又一个的坑,具体踩坑如下:

        1、同步数据没有打印详细的日志文件,导致后期排查错误万分困难

        2、同步数据时没有考虑数据量的问题,导致在正式环境上,由于数据量过大,第三方接口频繁调用失败导致同步数据失败

        3、同步数据结果的记录表设计字段不全面,确实同步时间,和业务域标识导致,后期排查数据困难。

        4、没有考虑实时同步接口的不稳定性,导致部分数据缺失。

        5、同步数据接口封装不严谨,没有进行深度重构,导致后续业务维护很难。

针对以上的坑,后续要改了N次bug,重构了N次代码,才算是填满了自己挖的坑,总之,如果后续要做数据同步尽量做到以下几点:

        1、同步数据没在关键的节点要打印详细的日志,方便后续排查问题以及维护。

        2、同步数据接口要考虑全面,如果数据量过大,要考虑分批同步数据。

        3、同步数据结果的记录表设计要全面,尽可能多的记录同步信息,其中同步时间是必不可少的。

        4、如果有实时同步的业务场景,要充分考虑系统的稳定性和数据的一致性,尽量考虑设计数据补偿策略。

        5、同步数据,尽量把数据封装到实体类中,避免直接操作json字符串,增加后期维护难度。

以上,是我首次同步数据的“血泪史”,希望可以帮助到大家。

 

你可能感兴趣的:(工作心得总结,接口设计,数据同步)