我正在使用Amazon lambda函数和API Gateway实现API,该lambda函数将依次调用另一个第三方API,并将数据转换为特定格式并返回。
我用来获取记录的第三部分API已启用了分页和限制功能,但是我使用lambda和API Gateway构建的API我不想在其中实现分页,而是希望此API获取所有页面将它们一一转换为特定格式,然后立即返回。该API的客户端不必使用不同的分页参数来调用它。
现在,由于Lambda函数最多具有15分钟的限制,而第3部分API也具有每分钟最大请求的限制,这是实现此功能的最佳方法。
这就是我现在正在做的事情,在我的lambda函数中,我在promise中推送特定数量的请求,当达到最大数量时,我停止推送更多内容并执行未决的promise,并将超时功能设置为一分钟同时执行未完成的承诺,我从它们生成响应,但由于有待执行的请求,因此不将其发送回去。超时完成后,我再次在promise中推送特定数量的请求,然后重复该过程。
所有页面完成后,我将返回数据。
现在的问题是,这可能会超过15分钟,并且lambda函数将终止。
即使使用其他亚马逊服务,还有更好的方法吗?