确定API调用的成本

确定API调用的成本,api,Api,我正在浏览adwords API,看到了他们的费率表- 他们每1000个API单元收取0.25美元,在“运营成本”部分列出了不同API调用的成本(以API单元为单位)。我很好奇——他们(和其他人)根据什么因素计算API调用的成本?有没有简单的公式来确定这一点 澄清:当我说“API调用的成本”时,我指的不是钱,而是API单位。例如,如何确定一个API调用需要100个API单元,而另一个API调用需要1000个API单元 注意:感兴趣者也应参考我的;那里的答案也非常有用。这实际上取决于公司如何看待

我正在浏览adwords API,看到了他们的费率表-

他们每1000个API单元收取0.25美元,在“运营成本”部分列出了不同API调用的成本(以API单元为单位)。我很好奇——他们(和其他人)根据什么因素计算API调用的成本?有没有简单的公式来确定这一点

澄清:当我说“API调用的成本”时,我指的不是钱,而是API单位。例如,如何确定一个API调用需要100个API单元,而另一个API调用需要1000个API单元



注意:感兴趣者也应参考我的;那里的答案也非常有用。

这实际上取决于公司如何看待其支付的API和相关费用-作为产品本身,或作为回收提供API成本的一种方式

如果它本身就是一种产品,那么它就像对任何其他产品定价一样(例如,收取市场将支付的费用等)。没有公式——它实际上取决于您通过API销售的产品


如果这只是一种成本回收的方法(例如运行API服务器),那么您可以确定每次调用的平均相对成本。例如,如果您知道某个呼叫通常会消耗另一个呼叫10倍的CPU资源,并且如果您知道CPU利用率是系统的瓶颈(即可能迫使您购买更多服务器的事情),你给那次通话定价是另一次通话的10倍。

你提到的第二部分——“确定每次通话的平均相对成本”——是我想知道的更多信息。您可以使用哪些工具来确定每个API调用消耗多少cpu或内存(考虑到调用可能还涉及查询数据库)?这实际上取决于您在后端使用的技术(例如,SQL Server可能有一些工具来分析查询性能)。您可以运行一个测试(例如,每种类型调用数千次,测量性能)-但在我看来,性能分析是软件工程中最复杂的部分之一,不幸的是,没有简单的答案。您可以从一些简单的事情开始(所有API调用的价值都相同),然后在发现性能问题时调整每次调用的定价(甚至Amazon在某个时候也使用S3定价)