每次 Rest api 调用之间的延迟
Delay between every Rest api call
我们有一项工作是根据我们从数据库中获取的少数 1000 条数据来打击内部 api。
目前我们正在迭代外部 api 并调用内部 api。这是导致 api 端出现尖峰的结果。他们建议保持几毫秒的延迟以避免这种激增,这样 api 端的生产者就不会出现峰值。
最初的想法是,睡眠可以用来实现它,这是非常低的级别api。但是,我正在探索 apis(在 spring-boot 或 java 或其他地方可用)它有更优雅的方式来考虑这个用例。
一个简单而常见的做法是使用一些客户端限速库来限制客户端调用API的速率。大多数容错库都会提供这样的功能。resilience4j
是流行的,它还为 spring-boot 提供启动器。
基本上它允许您定义客户端在给定时间段内可以进行的 API 调用的次数,以及客户端将等待多长时间(即超时)直到允许调用 API.
我们有一项工作是根据我们从数据库中获取的少数 1000 条数据来打击内部 api。
目前我们正在迭代外部 api 并调用内部 api。这是导致 api 端出现尖峰的结果。他们建议保持几毫秒的延迟以避免这种激增,这样 api 端的生产者就不会出现峰值。
最初的想法是,睡眠可以用来实现它,这是非常低的级别api。但是,我正在探索 apis(在 spring-boot 或 java 或其他地方可用)它有更优雅的方式来考虑这个用例。
一个简单而常见的做法是使用一些客户端限速库来限制客户端调用API的速率。大多数容错库都会提供这样的功能。resilience4j
是流行的,它还为 spring-boot 提供启动器。
基本上它允许您定义客户端在给定时间段内可以进行的 API 调用的次数,以及客户端将等待多长时间(即超时)直到允许调用 API.