【发布时间】:2020-11-22 22:25:55
【问题描述】:
我有需求,下面提供了它的选项,这个实现的最佳选择是什么?
一个新的上游 API 旨在提供 500 毫秒中值和 800 毫秒最大响应时间(第 99 个百分位)的 SLA。对应的 API 实现需要依次调用 3 个复杂度非常相似的下游 API。
这些下游 API 中的第一个为其响应时间提供以下 SLA:中位数:100 毫秒,第 80 个百分位:500 毫秒,第 95 个百分位:1000 毫秒。
如果可能,如何在上游 API 中设置超时以调用第一个下游 API 以满足新的上游 API 所需的 SLA?
A.设置50毫秒的超时时间;这会超时对该 API 的更多调用,但会为重试提供更多空间
B.设置超时 100 毫秒;剩下 400 毫秒让其他两个下游 API 完成
C.无法满足上游 API 所需的 SLA;必须与第一个下游 API 协商不同的 SLA 或调用替代 API
【问题讨论】:
标签: java api rest percentage percentile