API的对话:检索并提交消费者生成的内容(CGC),检索您的产品目录和关于CGC的统计信息。
API速率限制
对话API允许您以编程方式检索和提交Bazaarvoice对话数据以在应用程序中使用。要了解更多信息,请参阅对话API文档主页.
内容
本教程向开发人员介绍Bazaarvoice API速率限制,解释如何确定速率限制,并就如何避免超过速率限制提供了几个建议。
概述
会话API的使用速率以每个API键、每分钟为基础。每个键都有自己的限制,使用一个键不会影响其他键的限制。最初,密钥被设置为默认限制,这应该足以满足我们的大多数客户,我们将在假期期间主动提高它,以适应网络流量的增加。
为什么限制利率
Bazaarvoice平台是一个多租户系统,其中许多客户端共享相同的系统资源。必威投注网因此,限制过度使用以保护每个人的网络稳定是很重要的。如果没有速率限制,构造不良的应用程序或不可预见的情况可能会对网络性能和可用性产生负面影响。
确定速率限制
确定速率限制有两种方法:
Bazaarvoice门户
指API密钥管理以了解如何在Bazaarvoice门户网站查看API密钥的详细信息。
HTTP头信息
对话API将返回以下报头,您的应用程序可以使用这些报头来确保它没有超过速率限制。
的名字 | 描述 |
---|---|
X-Bazaarvoice-QPM-Allotted |
API键上设置的最大QPM(每分钟查询)容量。这是在任何给定的分钟内可以拨打的最大电话数。 |
X-Bazaarvoice-QPM-Current |
按上述限额使用的现时通呼次数;在本例中,它表示在特定的时间内您的键进行了多少次调用。 |
X-Bazaarvoice-QPS-Allotted |
⚠QPS已被QPM所取代。新的应用程序应该忽略QPS,现有的应用程序应该停止依赖它。 API键上设置的最大QPS(每秒查询)容量。这是在任何给定的秒内可以进行的最大调用数。 |
X-Bazaarvoice-QPS-Current |
⚠QPS已被QPM所取代。新的应用程序应该忽略QPS,现有的应用程序应该停止依赖它。 按上述限额使用的现时通呼次数;在这种情况下,它表示在特定的时间内你的键进行了多少次调用。 |
X-Bazaarvoice-Quota-Allotted |
每小时可拨打的最大电话数。 |
X-Bazaarvoice-Quota-Current |
当前限制值时间段内的当前通话次数。 |
X-Bazaarvoice-Error-Detail |
超过QPM或配额时返回错误消息。 |
X-Bazaarvoice-Quota-Reset |
速率限制将重置为0的时间。 |
在以下示例中,已超过速率限制(X-Bazaarvoice-QPM-Current
大于X-Bazaarvoice-QPM-Allotted
).
HTTP/1.1 200 OK "Content-Type":"application/json", "Date":"Mon, 24 Apr 2017 20:02:46 GMT", "Server":"Apigee Router","X-Bazaarvoice-error-detail":"帐户超过每秒查询限制",“X-Bazaarvoice-QPM-Allotted”:“60”,“X-Bazaarvoice-QPM-Current”:“60”,“x - bazaarvoice - qps - allocated”:“1”,“X-Bazaarvoice-QPS-Current”:“1”,“x - bazaarvoice - quota - allocated”:“7200000”,“X-Bazaarvoice-Quota-Current”:“63”,“X-Bazaarvoice-Quota-Reset”:“2017 - 04 - 24 t21:00:00.000z”,“内容长度”:“250”,“连接”:“关闭”
如何避免超标
这里有一些关于如何避免超过速率限制的建议。
- 正确使用API密钥
API密钥应该在每个应用程序的基础上使用。例如,对于在社交网络上显示用户生成内容(UGC)的应用程序,您可能有一个API密钥,而对于电子商务网站,您可能有一个不同的API密钥。每个地区或区域使用一个API键也是合适的。为美国和欧洲用户提供通信服务的客户端可能有两个API密钥,每个区域一个。
- 高效地提出请求
提出不必要的请求是应用程序超过速率限制的常见原因。一个典型的产品页面应该只需要一个请求来加载UGC的第一页,然后只有在用户表示他们希望看到其他视图时才会发出后续请求(例如分页、过滤、排序等)。此外,可以在请求主要内容的同时请求审查评论和问题回答等次要内容
包括
参数。 - 本地缓存
如果你已经恰当地使用了API键,并发出了有效的请求,你可以尝试缓存经常需要的资源。必威投注网具体的实现取决于每个客户端,但可能涉及预渲染包含UGC的产品页面,在用户请求时将UGC保存在数据存储或用户浏览器中,或者在应用程序和Bazaarvoice平台之间托管缓存代理。请参阅我们的缓存教程了解更多。
- 存储您需要的数据
从您的数据存储中为最终用户提供UGC,这些数据存储是使用来自Bazaarvoice平台的数据创建和更新的,与最终用户需求无关。这使您可以完全控制您向Bazaarvoice提出的请求以及如何使用您的数据。
⚠ 批准要求
此选项仅限于事先获得批准的客户。联系您的Bazaarvoice代表或我们的支持团队如果你想使用对话API创建你自己的UGC数据存储。 - 增加限制
最后,您可以联系您的Bazaarvoice代表或我们的支持团队如果你觉得这个限制不足以满足你的需求。利率限制的提高必须得到批准,并可能需要额外的费用.