正文
1 接收接口使用同步或异步的优缺点
- 同步:需要等待接口返回数据才能往下执行
- 异步:无需等待接口返回数据即可往下执行
- 优点:无需阻塞等待
- 缺点:流程控制较为复杂,可能需要回调操作,更多的多线程开销
使用场景:需要根据具体业务需求判断,流程是否强依赖接口返回的数据。
2 大规模的接收接口是否会对系统造成堵塞,是否考虑增加中间件进来(比如redis or 队列)
存在这种可能,接收接口接收到数据之后,如果需要同步数据到数据库或者备份数据到 ftp 服务器,都需要较大的资源开销。
数据量较大时,使用消息队列异步地对数据进行备份操作是较好的选择。
3 接口接收参数是用什么去接收?实体类、map...?
都可以,具体看接口提供方的参数形式
4 鉴权放通?
主要看接口是提供给谁使用的。
- 对外提供给用户使用:需要鉴权
- 对内提供给系统之间调用:可以放通,也可以鉴权
5 数据量一大,是否考虑多线程,以及一些线程问题,资源释放等等。以及数据库建立链接,事务等等
如果使用多线程,需要考虑线程安全,线程池,线程间通信等问题
6 考虑redis存储结构等等
接口调用频率如何,是否缓存热点数据
7 是否分页存,读等等
考虑数据量
8 请求接口超时时间有没有处理
9 请求接口超时了怎么办
10 是否try catch,log日志写的是否合理
11 ftp输出到的文件数据过大怎么办?
考虑切片存储
12 一次性存/读是否合理,有没必要分全量接口和增量接口
增量要考虑是靠什么判断是新增的数据,变更的数据是否需要提供等
13 数据来源于多种厂商是不是可以注明来源,这种就知道哪些厂商数据有问题