PHP如何保证通过接口执行的循环查询+本地数据更新这个过程正确完成?
程序员文章站
2023-12-30 12:20:28
...
目前在开发一个功能,这个功能会在我点击某设置参数的页面上的“保存”按钮的时候就会触发。
考虑到这个功能到时需要循环地发送不同的ID参数向接口请求获取数据,然后每次循环都根据获取的数据去更新本地数据库的相关字段(这个循环请求的次数可能会非常多,日后可能是成千上万次)……因为涉及到网络延时、阻断之类的问题,我要如何保证这个循环操作一定会完成呢?
回复内容:
目前在开发一个功能,这个功能会在我点击某设置参数的页面上的“保存”按钮的时候就会触发。
考虑到这个功能到时需要循环地发送不同的ID参数向接口请求获取数据,然后每次循环都根据获取的数据去更新本地数据库的相关字段(这个循环请求的次数可能会非常多,日后可能是成千上万次)……因为涉及到网络延时、阻断之类的问题,我要如何保证这个循环操作一定会完成呢?
用数据库的事务,一个事务里的多条sql,只要有一条失败了,之前执行的就会被回滚
既然知道要请求很多次接口,建议改成请求一次,请求的数据很多建议用上缓存,用队列做异步做数据库的事务操作