在一个方法里调用了两个第三方接口
接口一:异步生成数据库数据,数据量比较大可能要五到十秒,根据勾选的用例而定
接口二:先获取数据库id,直接获取接口一所生成的数据进行操作
请问如何在同步代码里面执行接口一和接口二?
我写的就是判断id 如果有就去获取 ,没有就线程睡眠一段时间再去获取
这样写太僵硬了 有更好地实现吗
在一个方法里调用了两个第三方接口
接口一:异步生成数据库数据,数据量比较大可能要五到十秒,根据勾选的用例而定
接口二:先获取数据库id,直接获取接口一所生成的数据进行操作
请问如何在同步代码里面执行接口一和接口二?
我写的就是判断id 如果有就去获取 ,没有就线程睡眠一段时间再去获取
这样写太僵硬了 有更好地实现吗
15 回答8.4k 阅读
8 回答6.2k 阅读
3 回答3.6k 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答2.6k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
MySQL有binlog功能,接口二的触发条件可以改为监听binlog,发现MySQL有变动,再执行接口二。或者在接口一查库完成后主动发送一个消息,接口二的触发条件就是监听接口一的消息了。
不过,接口一和接口二都是第三方的接口,没法改...
所以,我觉得你那个僵硬方法对这个问题来说是挺好的。